我有一個小窗體,其中包含一個jQuery UI對話框,用於在檢查特定複選框時詢問附加信息。該對話框打開幷包含2個額外的複選框。裏面有一個jQuery對話框的表單不提交
問題是,當表單被提交時,對話框中的2個複選框沒有與表單的其餘部分一起提交。從jQuery渲染對話框時我可以看出,它實際上是將它渲染到結束窗體標記之外,導致複選框不再是窗體的一部分。
我已經試過了諸如:
$("#dialog-form").parent().appendTo($("#ContactSpeakerForm:first"));
但還沒有拿出一個很好的解決方案。
這裏是我的JS:
$(function() {
var eventReg = $('#dialog-form').dialog({
autoOpen: false,
modal: true,
buttons: {
Ok: function() {
$(this).dialog("close");
}
}
});
$('#Confirmed').click(function() {
if($('#Confirmed').attr('checked')) {
eventReg.dialog("open");
}
});
});
下面是HTML:
<form id="ContactSpeakerForm" name="ContactSpeakerForm" action="/contacts/add-contact-speaker/id/3420" method="post">
<input type="hidden" name="ID" value="" id="ID">
<input type="hidden" name="Contact_ID" value="3420" id="Contact_ID">
<div class="page_panel_table">
<table>
<tbody>
<tr>
<td align="right" class="form_label">Confirmed:</td>
<td>
<input type="checkbox" name="Confirmed" id="Confirmed" value="1">
</td>
</tr>
<tr>
<td><input type="submit" name="submit" id="submit" value="Save"></td>
</tr>
</tbody>
</table>
</div>
<div id="dialog-form" style="display:none;" title="Speaker Event Registration">
<input type="checkbox" name="RegisterForEvent" id="RegisterForEvent" value="1">
<input type="checkbox" name="RegisterForDinner" id="RegisterForDinner" value="1">
</div>
</form>
任何人都知道一個好的解決方案?
關鍵的問題是,一個對話框被附加到身體,使其更容易管理定位...所以它從您的表格中刪除 – charlietfl 2012-03-26 19:00:46
@charlietfl:是這是問題。 – 2012-03-26 19:12:20