2017-07-06 42 views
0

我對HTML和jQuery(以及AJAX)都很陌生。我使用這段代碼發佈1個對象,但我想發佈多個對象(當我點擊按鈕「提交」(id = analsis)它需要xyz對象id的內容並將其發佈到127.0.0.1:5002)。Jquery發佈多個參數

$(function() { 
    $('#analysis').bind('click', function() { 
    $.post('http://127.0.0.1:5002/', { 
     contract: $('textarea[name="text"]').val() 
    }, function(data) { 
     var parsed = JSON.parse(data) 
     $("#xyz").text(parsed['abc']); 
    }); 
    return false; 
    }); 
}); 

我的形式看起來像這一點,(也有6個下拉菜單):

enter image description here

所以我想所有的人都張貼到http://127.0.0.1:5002/

+0

你可以提交表單。請看https://api.jquery.com/serialize/,如果這更符合你想要做的事情。 –

回答

0

實際上你的代碼並不完全符合你所描述的內容:不是發佈xyz的值,而是查找名稱爲「text」的textarea並將其值發佈到服務器。服務器結果被解析爲json,其中一個結果屬性(「abc」)被分配給你的「xyz」(表單)元素。

你可以做同樣的事情爲多個值在第二個之後的參數屬性添加到對象:

$(function() { 
    $('#analysis').bind('click', function() { 
     $.post(
      'http://127.0.0.1:5002/', 
      { 
       'contract': $('textarea[name="text"]').val(), 
       'slider1': $('#slider1').val(), 
       'slider2': $('#slider2').val(), 
       'slider3': $('#slider3').val(), 
       'slider4': $('#slider4').val(), 
       'dropdown1': $('#dropdown1').val(), 
       'dropdown2': $('#dropdown2').val(), 
       'dropdown3': $('#dropdown3').val(), 
       'dropdown4': $('#dropdown4').val(), 
       'dropdown5': $('#dropdown5').val(), 
       'dropdown6': $('#dropdown6').val(), 

      }, 
      function(data) { 
       var parsed = JSON.parse(data);     
       $("#xyz").text(parsed['abc']); 
      }); 
     return false; 
    }); 
}); 
+0

我可能是錯的 - 新手,讓我也試試這個。 – user3788123

+0

我是否總是需要標記這個數據xyz,或者可以說我可以將這個數據與「#analysis」關聯 - 按鈕 – user3788123

+0

試試這個代碼/// var parsed = JSON.parse(data); $(「# xyz「)。text(parsed.abc); –