我在aspx页面中有一个小表单。此表单在jQuery对话框中呈现。我在这个对话框中放了两个按钮(jQuery按钮)。由于那些不是aspx按钮,我必须在按下jQuery对话框按钮时手动进行回发,如下所示:
对话框:
jQuery(function () {
var dlg = $('#dialog_renombrar').dialog({
autoOpen: false,
resizable: false,
modal: true,
width: 360,
buttons: {
"Aceptar": function () {
__doPostBack('rnmbrFchr', null);
},
"Cancelar": function () {
$(this).dialog("close");
}
}
});
表格:
<div
align="center"
id="dialog_renombrar"
style="padding: 10px 10px 10px 10px;
margin: 10px 10px 10px 10px;
width:100%;
height:100%;
display:none;
overflow:auto">
<table
cellspacing="2"
width="100%"
align="center">
<tr>
<td>
Documento:
</td>
<td>
<asp:TextBox
ID="nombre_antiguo"
Enabled="false"
style="width:100%;"
runat="server"></asp:TextBox>
</td>
</tr>
<tr>
<td>
Nuevo nombre:
</td>
<td>
<cc1:SWCTextBox
ID="SWCTextBox3"
MarcarObligatorio="true"
style="width:100%; height:90%"
runat="server"></cc1:SWCTextBox>
<asp:HiddenField runat="server" ID="itemkey" />
</td>
</tr>
</table>
</div>
然后在执行回发的代码隐藏中,我无法访问文本字段。做不到:
Request.Forms["SWCTextField3"]
值和即时对象都不可见。
我需要帮助。谢谢。
答案 0 :(得分:0)
通过查看提供的页面源来检查文本框的实际ID。默认情况下,ASP.NET会破坏页面上的ID以确保它们保持唯一。如果您使用的是.NET 4,则可以通过设置页面指令ClientIDMode="Static"
来覆盖此行为。
答案 1 :(得分:0)
如果必须使用回发,或许您可以将文本框内容作为URL的查询字符串参数进行处理?