OnSubmit属性就像是<form>这个html对象的一个方法名(可以这样想当然的理解),其值(字符串,如OnSubmit=”操作”,其中”操作”这个字符串就是方法体)就是其方法体,默认返回true;
和高级语言(如java)一样,在该方法体中你可以写任意多个语句,包括内置函数和自定义函数,如
οnsubmit="
alert('haha'); //内置函数
submitTest(); //自定义函数
alert(this.tagName); //用到了this关键词
……(任意多条语句)
return false;
"
就相当于
java代码:
Form.prototype.OnSubmit = function() {
alert('haha'); //内置函数
submitTest(); //自定义函数
alert(this.tagName); //用到了this关键词
......(任意多条语句)
return false;
};
所以对于<formaction="index.jsp" method="post"οnsubmit="submitTest();">和<form action="index.jsp" method="post"οnsubmit="return submitTest();">的不同之处可以等效理解成:
<form action="index.jsp"method="post" οnsubmit="submitTest();">
这样写,override方法的效果为:
java代码:
Form.prototype.onsubmit = function() {
submitTest();
};
在这里submitTest()虽然返回false,但我们只执行了此函数,没有对其结果进行任何处理。而
<form action="index.jsp"method="post" οnsubmit="return submitTest();">
override方法的效果为:
java代码:
Form.prototype.onsubmit = function() {
return submitTest();
};
这个改变了函数的默认返回值,函数默认返回为true。
Get方式的提交,你需要用Request.QueryString来取得变量的值,而Post方式提交时,你必须通过Request.Form来访问提交的内容
Get和Post传送的方式:get是把参数数据队列加到提交表单的ACTION属性所指的URL中,值和表单内各个字段一一对应,在URL中可以看到。post是通过HTTPpost机制,将表单内各个字段与其内容放置在HTML HEADER内一起传送到ACTION属性所指的URL地址,用户看不到这个过程。
Get限制Form表单的数据集的值必须为ASCII字符;而Post支持整个ISO10646字符集。
Response.BufferOutput = true;表示输出的数据先存储在缓存中,缓存完成后集体输出,而Response.BufferOutput =false;表示输出的数据直接输出,不在缓存中停留。而Response.Buffer属性,已被淘汰,存在只是为了与以前兼容。例子:
for (int i = 0; i < 10000;i++)
{
Response.Write(i+ " ");
}
其效果是:在false时,页面中的数据数据,随页面加载慢慢的显示,而为true时,数据在页面加载完成后直接显示,不能看到数据的缓慢显示
Response.ContentType获取或设置输出流的MIME类型,比如说想输出图像文件时,就需要改变Response.ContentType的值,因为默认的是text/html
一个有趣现象,每次刷新页面,ID为txtInput的TextBox的内容会多出“1,,”,例如:1,,1,,你好,这个结果是页面刷新两次的结果
<formid="form1" runat="server">
<div>
<inputtype="text" name="txtInput" value="1"/>
<inputtype="text" name="txtInput" />
<inputtype="submit" name="btnSub" value="提交测试"/>
<asp:TextBoxrunat="server" ID="txtInputDemo" Text="你好" ></asp:TextBox>
<asp:TextBoxrunat="server" ID="txtInput" Text="你好"></asp:TextBox>
<asp:Buttonrunat="server" ID="btnOutPic" Text="读取/写入图片"OnClick="OnClickOutPic"/>
<asp:Buttonrunat="server" ID="btnTest" Text="测试"OnClick="OnClickTest"/>
</div>
</form>