请问为什么updatepanel更新后会导致jquery事件失效

jthkl 2016-05-07 10:57:31
在网页中使用了updatepanel,用于通过下拉框内容的变动控制几个panel显示或者隐藏
使用jquery代码
  
$(function () {
$("#<%=txtEmail.ClientID%>").focus(function () {
if ($(this).val() == "address@domain.com") {
$(this).val("");
}
}).blur(function () {
if ($(this).val() == "") {
$(this).val("address@domain.com");
}
});
})

用来在用户点击txtemail文本框时将其中的电子邮件示例地址清除掉。其中txtemail控件不在panel中,它总是显示的。
我的问题是如果没有控制panel,也就是说显示的是开始缺省的那个panel这时jquery代码是可以正常运行的,但是只要通过下拉框改变了几个panel的显示属性,jquery代码就失效了。请问为什么呢?
...全文
199 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
你贴代码还是不能跟问题本身结合起来。 你可以在
if ($(this).val()
这里设置断点(在vs 中调试),然后贴出第一次中断时调试this 结果,以及第二次(UpdatePanel 刷新之后)在中断时调试 this 的结果。
  • 打赏
  • 举报
回复
你只是说“在网页中使用了updatepanel”,但是并没有准确说明它的范围。
秋的红果实 2016-05-09
  • 打赏
  • 举报
回复
你将txtemail也放到UpdatePanel中
Xanl 2016-05-09
  • 打赏
  • 举报
回复
你确定是jQ失效?浏览器明显报错了? 没看懂你的问题 不过可以尝试 将$(this).val("") 替换成$(this).text("")
华丽的笔调 2016-05-09
  • 打赏
  • 举报
回复
<asp:DropDownList ID="cboContractType" runat="server" AutoPostBack="True">没绑定事件 每次选择只有回传
jthkl 2016-05-08
  • 打赏
  • 举报
回复
引用 2 楼 sp1234 的回复:
太模糊,看不懂你是怎样编写的。
您好。 我是这样弄的。 建立了一个下拉框 <asp:DropDownList ID="cboContractType" runat="server" AutoPostBack="True"> <asp:ListItem>家具</asp:ListItem> <asp:ListItem>家装</asp:ListItem> <asp:ListItem>家政</asp:ListItem> <asp:ListItem>家电</asp:ListItem> </asp:DropDownList> 在 Protected Sub cboContractType_SelectedIndexChanged事件中 pnlJD4.Visible = False pnlJV4.Visible = False pnlJZ1.Visible = False pnlJZ4.Visible = False Select Case cboContractType.SelectedIndex Case 0 pnlJV4.Visible = True Case 1 pnlJZ1.Visible = True Case 2 pnlJZ4.Visible = True Case 3 pnlJD4.Visible = True End Select 每个panel中有不同的文本框用于像用户收集信息。根据业务类型不同,收集不同的信息。电子邮件信息是所有业务类型都要收集的。 之后就像我说的,只要不执行cboContractType_SelectedIndexChanged事件,jquery代码就能够成功清空文本框或者填入数据,但是如果执行了,那么jquery代码就失效了。
  • 打赏
  • 举报
回复
太模糊,看不懂你是怎样编写的。
jthkl 2016-05-07
  • 打赏
  • 举报
回复
补充一下,只要用下拉框控制了panel,就算改回开始那个缺省的panel也不行了。

62,046

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧