来自Postback问题的ASP.NET jQuery

时间:2011-06-19 18:12:04

标签: jquery asp.net ajax jquery-ui

我对jQuery很新...

我正在我的asp.net页面中实现jQuery UI。

我正在实现的功能是模态弹出对话框(实际上是一个小形式)

实现弹出窗口的控件/页面也是一种形式。

理想情况是:用户填写页面上的两个文本框,然后点击弹出一个带有1个文本框的小模态表单的按钮,用户填写并按下模态弹出窗口上的按钮,该按钮完成其工作,并关闭弹出窗口,然后用户单击主页面上的保存。

上述情况并未发生......

该页面有两个div

第一个div是将弹出的div1(包含1个txtbox和一个按钮的div) 第二个div是div2(包含两个txtbox和一个保存按钮的div)

两个div的内容都封装在各自的UpdatePanel中(两个div都是自己的任何更新面板)

如果div1(popup div)的内容未包含在标记中,则弹出窗口内按钮上的OnClick事件不会触发。 (它只是关闭弹出窗口,因为我在脚本部分编写了上面的关闭脚本)

如果我封装了标签内div1中的所有东西,OnClick事件触发,弹出窗口关闭(不确定因为事件触发或我的关闭脚本),但是div2中的2个文本框现在是空的.. 。(在进一步调查后我发现,当OnClick事件发生时,弹出窗口(div1)中的文本框也提交了一个空字符串)

我需要解决这个问题,我需要在弹出窗口关闭时存在值,我肯定想在弹出窗口中调用附加到按钮的OnClick事件......

一个不好的解决方案: 如果我只使用UpdatePanel(div1和div2中的按钮)封装导致回发的元素,那么事件也会触发,当弹出窗口关闭时值仍然存在...之所以不好,因为我会有很多回发页面上的元素,如下拉列表等,只是使用UpdatePanel封装元素,最终可能会在页面上显示5-6个UpdatePanel ....

1 个答案:

答案 0 :(得分:1)

在用户填写数据时,只需使用两个div来保存数据。 在表单上提交后面的代码中的所有数据字段。 不要不必要地复杂化事情,请在将来提供代码以便更好地理解。