Ajax删除了对javascript所做的任何更改
本文关键字:任何更 javascript 删除 Ajax | 更新日期: 2023-09-27 18:10:55
使用ajax,我引起了OnTextChangedEvent
之前发生的事情,有一些Javascript执行检查输入字段的验证和输出一些文本基于它是否有效。我运行的Ajax将重置javascript所做的更改。这一切都按照这个顺序发生:
Javascript火灾!
文本更改显示
Ajax火灾!
文本更改重置
ajax部分自动回退包含在更新面板中。在不给出任何代码的情况下,有人有办法阻止javascript更改重置吗?
在一天中,我将添加代码,因为我有时间。我想我至少会把问题提出来。
文本更改是在DOM-Model中进行的,不会传输到服务器。如果ajax触发,它将覆盖javascript在DOM中所做的更改。
解决方案是将验证文本传输到服务器,并通过ajax再次添加。
UpdatePanel完全取代了更新面板上的内容一个更新。
这意味着您订阅的那些事件是不存在的因为更新面板中有新元素,所以订阅时间更长。
完整答案在这里
在您的Page或MasterPage中,放入以下脚本
<script type="text/javascript">
Sys.WebForms.PageRequestManager.getInstance().add_beginRequest(BeginRequestHandler);
function EndRequestHandler(sender, args)
{
Validate(); //method that performs check on input field
}
</script>