我試圖提交一個表單,其中包含動態元素,這些動態元素在頁面完成加載後通過jQ添加到DOM中。jQuery:提交動態表單元素的問題
當我在表單上運行serialize()時,它會抓取硬編碼到頁面中的所有字段的數據 - 但不是動態字段。
這裏有相同的一些代碼片斷..
HTML
<form id="someform" name="someform" method="post" action"">
<input type="text" name="afield" />
<ul id="somelist">
</ul>
<input type="submit" name="submit" />
</form>
<img id="add" src="add-button.png" />
<div class="new_unit" style="display:none">
<input type="text" name="somefield" />
</div>
的JavaScript
<script type="text/javascript">
// Adds a new field to the form
$('#add').click(function() {
$('#somelist').append('<li>' + $('.new_unit').html() + '</li>');
});
// Validate before submission
$('#someform').validate({
.......,
.....,
submitHandler: submit_form
});
function submit_form() {
_data = $('#someform').serialize();
alert(_data);
}
</script>
在命中提交按鈕,在靜態字段的數據, 字段正在顯示...但任何由jQuery添加的某些字段不是。
我在這裏找到了幾個similar questions。我遵守建議的解決方案,但沒有效果。
我正在使用最新的jQuery(1.4.1) - 並考慮使用live()事件綁定器進行播放。我有一種可能有助於解決此問題的感覺,但無法弄清楚如何將它與validate()插件結合使用。
有什麼建議嗎?
感謝, 平方公尺Ë
嗯,你的代碼字面上粘貼到託管一個帶有鏈接的測試文件到谷歌的jquery和ms的託管jquery.validate適用於我。至少在Firefox 3.6中。我可以給你一個完整的測試文件的副本,如果你想 – 2010-01-28 04:19:11
Grrrr ......這個噩夢不會!對我而言,至少......直到我將這些[]包括在內。我想,最有可能的問題是類似命名字段的多個實例。感謝您的反饋意見。 – 2010-01-28 09:03:47