2017-01-03 64 views
0

我正在使用服务总线来从其他项目发送和recive orderId。我的Ajax代码不会在第一次尝试中工作,但是在第一次尝试之后,它可以正常工作。Ajax代码不会第一次工作,那么它的工作原理

$(document).ready(function() { 
     var url = "/Home/readFromQueue"; //reading from ASB, get orderId 

     function getData() { 
      $.get(url, function(data) { 

       var id = data;  

       //NewOrder in controller wont run for the first time 
       $.post("/Home/NewOrder", { "id": id }, 
         function(data) { ... 

我的Ajax代码有什么问题吗?在调试模式下,ReadFromQueue工作正常,并通过正确的Id(第一次尝试)。但NewOrder不会在第一次尝试中运行。但如果我再试一次,那么它就可以正常工作。

编辑:

我当前的代码:

var url = "/Home/readFromQueue"; 
function getData() { 
    $.get(url, function(data) {  

     var id = data;      
       $.ajax({ 
        type: "GET", 
        contentType: "application/json; charset=utf-8", 
        url: "/Home/NewOrder", 
        data: "{'id':'" + id + "'}", 
        success: function (data) {... 

回答

0

你可以试试这个代码。 你应该在点击事件时调用这个函数

function sendData(){ 
    $.ajax({ 
      type: "POST", 
      contentType: "application/json; charset=utf-8", 
      url: "yoururlhere", 
      data: "{'data1':'" + value1+ "', 'data2':'" + value2+ "', 'data3':'" + value3+ "'}", 
      success: function (result) { 
       //do somthing here 
      } 
    }); 
} 
+0

是'data'我发送给控制器中的参数吗?例如。 'Id'等 – Muppen

+0

你需要像这样添加 data:“{'id':'”+ $ id +“'}”, –

+0

我应用了你的代码,但它不起作用。你能检查我做错了吗?我使用当前代码更新了我的问题, – Muppen

相关问题