我有一个“简报”小部件,可以在用户按下按钮时展开。扩展容器内部是一个输入框和一个“提交”按钮。我的代码隐藏检查电子邮件是否有效,然后发送邮件。如果电子邮件无效,则会将错误消息放入标签中。
问题是,当我单击我的提交按钮时,jQuery函数将重置,容器不再展开。
$('.widget').click(function () {
$('.widget').addClass('wdly');
$('.widly').addClass('window');
});
$('.hide1').click(function () {
$('.widget').removeClass('wdly');
$('.widly').removeClass('window');
});
<div class="widget">
<span class="mail" style="margin-left: 3px">Newsmail</span>
</div>
<div class="widly">
<span class="hide1"></span>
<asp:TextBox ID="txtEmail" runat="server" CssClass="form-control newsmail"></asp:TextBox>
<asp:Label ID="emailRegEx" runat="server" Text="Label" style="position:absolute; margin-top: 50px; margin-left: 60px;" Visible="false"></asp:Label>
<asp:Button ID="submit" runat="server" Text="Submit" CssClass="btn btn-lg btn-success submit" OnClick="submit_Click1" />
</div>
protected void submit_Click1(object sender, EventArgs e)
{
if (Regex.IsMatch(txtEmail.Text, @"\w+([-+.']\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*", RegexOptions.IgnoreCase))
{
// send email
}
else
{
emailRegEx.Visible = true;
emailRegEx.Text = "Invalid E-mail format";
}
}
我想我正在寻找的是某种部分加载,这使得DOM记住了我的小部件的当前设置,而不是将其回滚到初始设置。
答案 0 :(得分:0)
当点击事件被称为页面回发时,jquery事件不会激活。你需要在JavaScript中分配一个部分回发处理程序。
function functionname() {
// do something
}
Sys.WebForms.PageRequestManager.getInstance().add_endRequest(functionname);