2011-01-08 31 views

回答

6

如果设置使用行为提交虚假,ASP.NET会生成脚本来处理通过调用如下面的代码“__doPostBack”的方法提交。该方法将为事件目标添加值,以告知服务器哪个元素正在触发当前事件。

<script type="text/javascript"> 
//<![CDATA[ 
var theForm = document.forms['ctl00']; 
if (!theForm) { 
    theForm = document.ctl00; 
} 
function __doPostBack(eventTarget, eventArgument) { 
    if (!theForm.onsubmit || (theForm.onsubmit() != false)) { 
     theForm.__EVENTTARGET.value = eventTarget; 
     theForm.__EVENTARGUMENT.value = eventArgument; 
     theForm.submit(); 
    } 
} 
//]]> 
</script> 

<input type="button" name="Button1" value="Submit" onclick="javascript:__doPostBack('Button1','')" id="Button1">  

另一方面,如果您将使用提交行为设置为true,ASP.NET将生成按钮作为输入类型提交而不是类型按钮。当使用单击此按钮时,表单通常会被引用。

<input type="submit" name="Button1" value="Submit" id="Button1"> 

这两种方式在服务器端没有区别。但是,如果将使用提交行为设置为true,则会生成一个更清洁的XHTML。

0

根据您引用似乎默认行为,使用标准的形式提交按钮提交一个表单的文档,同时将其设置为false,反而会做这样的事情:

<input type=button onclick="submitForm()" /> 

默认表单行为是:

<form><input type=submit /></form> 
+0

是的,我知道,但回发机制如何不同? – Ahmed 2011-01-08 20:17:38

相关问题