禁用javascript时,页面无法回发

时间:2011-12-13 02:31:14

标签: javascript asp.net html

我得到这样的结构:

<asp:TextBox runat="server" ID="txt"/>
<input runat="server" id="btn" onserverclick="btn_Click" type="image" src="demo.png"/>

当我在文本框中输入内容并按Enter键时,可以调用方法btn_Click。但是当禁用javascript时,它无法回发并且无法调用btn_Click方法。

这有什么问题?

任何帮助,谢谢。

1 个答案:

答案 0 :(得分:2)

大多数ASP.NET服务器端控件使用JavaScript发布围绕整个页面内容的form标记(在源文件中查找<form runat="server">标记,或{{1}在浏览器的HTML源代码中。)

实际上,这种行为在WebForms中非常紧密,对整个页面使用1 <form name="aspnetForm">标记,并为ViewState,事件目标,命令参数等隐藏输入。

如果您需要没有JavaScript的功能,那么您需要一种简单依赖HTTP协议的回归基础方法,只需使用formGET个请求与您自己的POST标签(不能嵌套)和常规form标签。

老实说,如果您需要没有JavaScript的功能,切换到ASP.NET MVC可能会更容易。