我在ASP.NET Web应用程序中使用Basic Modal Dialog。在pageload
事件处理程序中,它正确地将数据绑定到模态弹出窗口内的文本框。但是当我尝试从buttonclick
事件处理程序中的文本框中检索值时,它只返回空字符串作为值。
代码基本上就像这样有一个div内的文本框弹出:
<asp:TextBox ID="fname" runat="server"></asp:TextBox>
在页面加载中:
fname.Text = customer.firstName; this is working
在按钮中单击:
protected void BtnSaveinfoClick(object sender, EventArgs e)
{
var firstname = fname.Text.Trim();// this taking values as ""
}
我确实在breakpoint
中制作了buttonclick
。当我将鼠标悬停在fname
文本框上并显示firebug
时,显示值已存在。
<input id="MainContent_cphMain_PersonalInfo1_fname" type="text" value="Andrew" name="ctl00$ctl00$MainContent$cphMain$PersonalInfo1$fname">
任何想法都会有所帮助。
答案 0 :(得分:1)
您必须使用appendTo
option将对话框附加到表单以便触发ASP.NET事件:
appendTo [String:'body']
将元素追加到的jQuery选择器。对于ASP.NET,请使用“表单”。
注意:默认情况下,jQuery UI对话框会附加到body标记。必须在表单标记内呈现所有.NET控件才能正常工作。对于练习,尝试在窗体标记之外添加任何控件(即:asp:textbox)到runat =“server”的页面,看看ASP.NET有什么说法。
答案 1 :(得分:0)
您是否检查过Page_Load和其他脚本,以确保在事件发生前的任何时候都没有清除fname
?
答案 2 :(得分:0)
这就是{{3p>