Page.Ispostback现在总是返回false

时间:2016-08-18 18:57:01

标签: c# asp.net visual-studio-2015

由于某些未知原因,一个功能齐全的网页现在开始正常工作,这似乎是回发问题。

这已经工作了很久但最近停止了工作,可能是因为解决方案从VS2012升级到VS2015但是我不确定......

这很简单,我有一个asp:button runat =服务器,我用jquery以编程方式点击。该按钮具有相应的服务器端onclick-method,它应该在onclick上执行。

我注意到它在点击时从不进入方法,一些调试告诉我,当我输入page_load时,即使点击按钮,IsPostback也总是返回false。

如果我在page_init中放置一个断点,我可以看到IsPostback返回true但是当它到达page_load时它返回false并因此从不进入metod并且其他服务器端控件已经丢失了它们的viewstate值并且都被“重置”可以这么说

这可能是什么原因??

2 个答案:

答案 0 :(得分:0)

答案就在你的陈述背后,"我有一个asp:button runat =服务器,我用jquery以编程方式点击。"我怀疑当你看到你是如何做到这一点时,你正在改变关于请求进入服务器的事情。

观看流量。看到请求实际上是一个POST。然后确保按钮的表单输入值是正确的。

答案 1 :(得分:0)

我找到了问题的原因。我完全解剖了这个页面,直到错误消失(工作时间)。该错误是由head-tag中的html页面中的这行代码引起的:

<iframe frameborder="0" marginwidth="0" marginheight="0" scrolling="no" width="100%" height="0" src="javascript:false;" />

当页面加载时,没有对此iframe的引用,仅当用户单击列表中的行(html-table)时才通过jquery引用。这怎么会导致这个问题对我来说是一个完全的谜。请记住,此代码与我们的内部测试服务器和生产环境中安装的代码完全相同。它只是在我的计算机上才起作用,除了我在2012年到2015年将解决方案文件升级后我注意到的其他原因之外我没有其他理由......