0

I have the Ajax call listed bellow inside a jquery function, and the ajax call is not working. I've used "alert" to debug and its like the jquery function didn't even had the ajax call. Nothing inside it is processed, with no sucess and no errors.
Isn't it possible to add an ajax function inside a jquery bind method or is it something else I'm doing wrong?

$('#ids').bind('click',function(event){

            var str ="#" + event.target.id;
            var subs=str.substring(2,str.length);
                        selectedWeapon="#E" + subs;
                        var mWeapon=$(selectedWeapon).text();

            if(mWeapon=="Attack!")
            {

                indexInfo=selectedWeapon.indexOf('_');
                            if(indexInfo>0)
                            {
                                var res = "#" + selectedWeapon.substring(1,indexInfo) + "_VALS";
                                var resQT = "#" + selectedWeapon.substring(1,indexInfo) +  "_NumberToSend";

                                selectedWeapon=$(res ).val();
                                selectedQuantity=$(resQT).val();

                                if(EnemyInfo!="")
                                {
                                    $('#txtAttackInfo').val(selectedWeapon);
                                        var tmp="";
                                        var ReturnValue1=40;

                                        // Obtain selected Object ID
                        $.ajax({
                            type: 'POST',
                            url: 'returnObjectID.php',
                            data:  'Name=' + selectedWeapon,
                            cache: false,
                            success: function(result) {
                                ReturnValue1=43;
                                  if(result){
                                    ReturnValue1=22;//result;


                                                  }
                                                  else
                                                  {
                                                    ReturnValue1=-1;
                                                  }
                                            },
                                            error: function (XMLHttpRequest, textStatus, errorThrown) {
                                    alert("Status: " + textStatus); 
                                    alert("Error: " + errorThrown);
                                    ReturnValue1=-4;

                                }
                        });

                        tmp="Attacking Player: " + EnemyInfo;
                                        $("#divAtackInfo").html(tmp);
                        alert("Sending " + selectedQuantity + " " + selectedWeapon + " to " + EnemyInfo + " With returned id:" + ReturnValue1); 


                                }
                            }


                                $('#txtAttackInfo').val(selectedWeapon);



            }


        });  

My thanks in advanced

2
Contributors
1
Reply
23
Views
3 Years
Discussion Span
Last Post by dcdruck
0

It is definitely possible to use $.ajax() within another jQuery function. I'm not sure what the issue is, but it is not that.

One problem you are going to have once you do get the AJAX working is that you are potentially using the variable ReturnValue1 before it has been set. It won't be set until the AJAX call completes. However, the code after your $.ajax() call will begin running immediately, so it's likely the code will reach your alert() before ReturnValue1 has been set.

Anyway, going back to your current problem, what does the alert() at line 54 produce? Does it even fire at all? Are you certain that the if (EnemyInfo != "") condition is true? Have you checked your Network tab of your developer tools (F12) in whatever browser you're using. This will let you see if the browser is making a call to returnObjectID.php at all or not.

This topic has been dead for over six months. Start a new discussion instead.
Have something to contribute to this discussion? Please be thoughtful, detailed and courteous, and be sure to adhere to our posting rules.