2010-07-20 95 views
3

快速問題...通過POST提交UL的最佳方式是什麼?

我有一個輸入框,一旦輸入密鑰,將值添加到無序列表中。我如何將這個無序列表傳遞給jquery post?我使用form.serialize,所以我不必定義每個變量的發佈。

例如,假設我輸入了3個水果,並且它們被動態添加到表單內的無序列表中。

水果:[請在此輸入文本]

  • 蘋果
  • 香蕉

我想創建一個隱藏的文本字段,將與填充的每次用戶按下輸入時新的值。

還有其他想法嗎?

回答

15
<ul> 
    <li>Apple<input type='hidden' name='fruits[]' value='Apple'/></li> 
    <li>Pear<input type='hidden' name='fruits[]' value='Pear'/></li> 
    <li>Banana<input type='hidden' name='fruits[]' value='Banana'/></li> 
</ul> 

交房時,你會得到$_POST數組名爲fruits這些值與數組名稱添加隱藏的輸入。

+0

正是我一直在尋找! – orfdorf 2015-07-29 05:21:06

1

當你動態添加的東西到你的UL,你可以像

<input type='hidden' name='ul[1]' value='banana'/> 
<input type='hidden' name='ul[2]' value='apple'/> 
<input type='hidden' name='ul[3]' value='pear'/> 
2

類似的東西(上行含量的動態施工):

<html> 
<head> 
    <title>S.O. 3287336</title> 
    <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.4/jquery.min.js"></script> 
    <script type="text/javascript"> 
    $(document).ready(function() { 
     $('#add').click(function() { 
      var li = $('<li></li>').text($('#edit').val()); 
      $('#ul').append(li); 
     }); 

     $('#addForm').submit(function() { 
      var ul = ""; 

      $('#ul li').each(function() { 
       ul += $(this).html() + ";" 
      }); 

      alert("About to submit: " + ul); 
      return false; // don't submit 
     }); 
    }); 
    </script> 
</head> 
<body> 
<ul id="ul"> 
</ul> 
<form id="addForm"> 
    <input type="text" name="edit" id="edit" value=""/> 
    <input type="button" id="add" value="Add"/> 
    <input type="submit" id="submit-btn" value="End"/> 
</form> 
</body> 
</html> 
相關問題