我有很多带有TextChanged事件的文本框。顶部还有一个主文本框,如果我更改它并按下“全部更改”按钮,它将更改整个文本框页面。
现在,按钮几乎完全存在于客户端(只是使用jquery来更改文本框),但我想知道它是否在我的程序运行100多个TextChanged事件之前被按下了。 我尝试为它添加一个服务器函数来将布尔值设置为true,希望它首先触发,但是,TextChanged事件会先触发。
TL; DR我需要告诉我的程序在回发后以哪个顺序完成事件。
答案 0 :(得分:3)
您实际上无法更改ASP.NET页面生命周期中的事件顺序......但您仍然可以完成所需的操作。这是一个建议......把它当作FWIW ......
在客户端,您可以添加一个Javascript事件处理程序(或修改已存在的处理程序),以使用魔术值填充服务器端表单字段(这并不重要)。在回发时,在Page_Load(和/或TextChanged事件处理程序)中,检查IsPostback = true时是否存在值。您可能需要连接(一堆)不同的处理程序来进行相同的检查,因此这可能过于繁琐,但它至少可能是一个想法的种子。
不会保证它非常优雅,但至少应该让你更接近你需要的东西。