如何使用jquery ajax数组发帖json?

时间:2013-11-06 19:01:25

标签: php jquery

我想在ajax json帖子中发送数组,但有些代码是error.how来图这个代码?

HTML

 <table width="200" border="1">
      <tr>
        <td>table</td>
        <td>
          <input name="table[]" type="text" id="table[]" value="5" />
    </td>
      </tr>
      <tr>
        <td>menu</td>
        <td><input name="menu[]" type="text" id="menu[]" value="noodle" /></td>
      </tr>
      <tr>
        <td>number</td>
        <td><input name="number[]" type="text" id="number[]" value="1" /></td>
      </tr>
      <tr>
        <td>note</td>
        <td><input name="note[]" type="text" id="note[]" value="no " /></td>
      </tr>
      <tr>
        <td>table</td>
        <td><input name="table[]" type="text" id="table[]" value="1" /></td>
      </tr>
      <tr>
        <td>menu</td>
        <td><input name="menu[]" type="text" id="menu[]" value="beer" /></td>
      </tr>
      <tr>
        <td>number</td>
        <td><input name="number[]" type="text" id="number[]" value="2" /></td>
      </tr>
      <tr>
        <td>note</td>
        <td><input name="note[]" type="text" id="note[]" value="-" /></td>
      </tr>
    </table>
<button id="save-menu">save</button>
<button id="calculator">calculator</button>

Jquery:如果我单击按钮保存菜单,它会将一些数据发送到菜单/订单,或者我点击按钮计算器,它会将一些数据发送到计算器页面。但是我的jquery代码不是在数组中发送所有值,如何编写这段代码?请帮帮我。谢谢。

        <script>
        $(document).ready(function(){
$('#save-menu').click(function() {

        $.post('menu/order', {      
            table : $('select#workplace-table').val(),
            'mid[]' : $('input#order-mid').val(),
            'number[]' : $('input#order-number').val(),
            'note[]' : $('input#order-note').val(),
            }); 


   $('#calculator').click(function() {

        $.post('menu/calculator, {      
            table : $('select#workplace-table').val(),
            'mid[]' : $('input#order-mid').val(),
            'number[]' : $('input#order-number').val(),
            }); 


        });
        </script>

3 个答案:

答案 0 :(得分:0)

不要使用if(clickHandler)样式语法,它在您需要时永远不会触发,而只是定义点击处理程序:

$('#save-menu').click(function() {
    //do stuff on save-menu click
})

答案 1 :(得分:0)

这就是设置点击事件导致您出现问题的方式。 看起来应该更像这样:

$('#save-menu').click(function() {
  $.post(... ajax stuff...);
});

答案 2 :(得分:0)

将事件处理程序绑定到“click”JavaScript事件,或在元素上触发该事件。

$( "#save-menu" ).click(function() {
   //Handler for .click() called. 
   $.post('menu/order',{...});
});

$( "#calculator" ).click(function() {
   //Handler for .click() called. 
   $.post('menu/calculator',{...});
});