javascript - jquery function returns true but cannot process the return value -
this question has answer here:
- how return response asynchronous call? 21 answers
 
hi guys here code function checks if id present in database
function checkifuploaded(citenr) {         $.ajax({             type: "post",             url: "locationsdb.asmx/checkifexist",             data: '{"citenr": "' + citenr + '"}',             contenttype: "application/json; charset=utf-8",             datatype: "json",             success: function (response) {                 if (response.d) {                      return true;                  } else {                      return false;                 }                  //setinfo();             },             failure: function (response) {                 alert(response.d);             }          });     }   now have function using function above
function plotnew(lat, lng) {              $('#latt').val(lat);             $('#longt').val(lng);             $("#panel2").dialog({                 resizable: false,                 height: 350,                 width: 600,                 modal: true,                 buttons: {                     "plot incident , save database": function () {                         //$(this).dialog("close");                         if (checkifuploaded($('#idcr').val())) {                             $.post(                                     'insertcrimelocation.aspx',                                     { lat: $('#latt').val(), long: $('#longt').val(), cirsid: $('#idcr').val() },                                     function (responsetext, textstatus) {                                         //checkifexist                                          plot();                                          $("#panel2").dialog("close");                                         $.ambiance({ message: "successfully plotted incident!",                                             title: "success!",                                             type: "success"                                         });                                       })                                     .error(function () {                                         $.ambiance({ message: "error on request",                                             title: "error!",                                             type: "error"                                         });                                     });                         } else {                             $.ambiance({ message: "the c.i.r.s id not yet uploaded",                                 title: "error!",                                 type: "error"                             });                         }                       },                     cancel: function () {                         $(this).dialog("close");                     }                 }             });           }   my webservice code below returns expected returns true
<webmethod()> _     public function checkifexist(citenr string) boolean         dim locs new crimemsapslocationdatacontext         dim check = locs.offenses.where(function(offense) offense.cite_nr = citenr).first         if not check nothing             return true         else             return false         end if      end function   what amazes me on second function namely plotnew() if return value true executes other way around instead of calling function trough page there wrong code?
i got work code below
function checkifuploaded(citenr) {         $.ajax({             type: "post",             url: "locationsdb.asmx/checkifexist",             data: '{"citenr": "' + citenr + '"}',             contenttype: "application/json; charset=utf-8",             datatype: "json",             success: function (response) {                 if (response.d) {                      squeezed function here make work                     , info                  } else {                      return false;                 }                  //setinfo();             },             failure: function (response) {                 alert(response.d);             }          });     }      
you can use promise object handle asynchronous processing. http://api.jquery.com/jquery.ajax/
Comments
Post a Comment