Submit

JavaScript

JavaScript语言参考手册      技术交流 :迷途知返 pwwang.com
JavaScript手册
【目录】 【上一页】 【下一页】 【索引】

Submit

一个 HTML 表单上的提交按钮。提交按钮将导致表单被提交。

客户端对象
实现版本 Navigator 2.0
Navigator 3.0: 添加了 type 属性; 添加了 onBlur 和 onFocus 事件控制句柄;添加了 blur 和 focus 方法。
Navigator 4.0: 添加了 handleEvent 方法。

创建源

带有“submit”作为 TYPE 属性的 HTML INPUT 标记。对于一个给定的表单,JavaScript 运行时刻引擎将创建一个对应的 Submit 对象并将其放置在对应的 Form 对象的 elements 数组中。你可以通过该数组的索引访问 Submit 对象。你可以使用数值或在提供了 NAME 属性的情况下使用 NAME 索引该数组。

事件句柄

安全性

Navigator 4.0:将表单提交到 mailto: 或 news: URL 需要有 UniversalSendMail 权限。要获取 Navigator 4.0 中关于安全性更多的信息,请看“JavaScript 指南”中的第七章“JavaScript 安全性”

描述

表单中的一个 Submit 对象看起来像这样:

Submit 对象是一个表单元素,必须在 FORM 标记内定义。

单击提交按钮将把表单提交到由表单的 action 属性指定的 URL。此行为通常是在客户端装入一个新页面;也可能与当前页相同,如果 action 属性确实是这么指定的或者根本就没有指定 action 属性。

提交按钮的 onClick 事件句柄不能阻止表单被提交;相反,你应该使用表单的 onSubmit 事件句柄或者使用 submit 方法而不是 Submit 对象。请参看 Form 对象的示例。

属性概览

form 指定了包含 Submit 对象的表单。
name 反映了 NAME 属性。
type 反映了 TYPE 属性。
value 反映了 VALUE 属性。

方法概览

blur 将焦点从提交按钮移开。
click 模拟对提交按钮的单击。
focus 将焦点移至提交按钮。
handleEvent 调用指定事件的控制句柄。

示例

下面的例子将创建一个叫做 submitButton 的 Submit 对象。文本“完成”显示在按钮的表面上。

<INPUT TYPE="submit" NAME="submitButton" VALUE="完成">

请参看 Form 的示例。

参看

Button, Form, Reset, Form.submit, onSubmit

属性

form

对包含该提交按钮的表单的引用。

属性源 Submit
只读
实现版本 Navigator 2.0

描述

每个表单元素都有一个 form 属性用于指向元素的父表单。该属性在事件控制句柄中特别有用,你可能想要由其获得当前表单中其它元素。

示例

下面的例子演示了带有几个元素的表单。当用户单击 button2 时,函数 showElements 将显示一个警告框,其中包含了表单 myForm 中每个元素的名称。

<SCRIPT>
function showElements(theForm) {
   str = "表单 " + theForm.name + " 的表单元素有:\n "
   for (i = 0; i < theForm.length; i++)
      str += theForm.elements[i].name + "\n"
   alert(str)
}
</SCRIPT>
<FORM NAME="myForm">
表单名称:<INPUT TYPE="text" NAME="text1" VALUE="Beluga">
<P>
<INPUT NAME="button1" TYPE="button" VALUE="显示表单名称"
   onClick="this.form.text1.value=this.form.name">
<INPUT NAME="button2" TYPE="submit" VALUE="显示表单元素"
   onClick="showElements(this.form)">
</FORM>
警告框中将显示下列文本:

表单 myForm 的表单元素有:
text1
button1
button2

参看

Form

name

指定了提交按钮名称的字符串。

属性源 Submit
实现版本 Navigator 2.0

安全性

Navigator 3.0:该属性默认是带有污点的。有关数据污点的更多信息,请看“JavaScript 的安全性”

描述

name 属性实际上反映的是 NAME 属性的值。更改 name 属性将覆盖此设置。

不要混淆 name 属性和显示在按钮表面上的文本。value 属性指定了该按钮的表面文本。name 属性并不显示在屏幕上;它仅仅用于编程时对该按钮的引用。

如果在同一个表单上出现了多个有相同 NAME 属性的对象,将会自动创建一个给定名称的数组。该数组中的每个元素都代表着一个独立的 Form 对象。元素将根据源文件中的顺序从 0 开始编号。例如,如果在同一表单上有两个 Text 元素和一个 Submit 元素的 NAME 属性都设置为了“myField”,则会创建元素为 myField[0]、myField[1] 和 myField[2] 的数组。你需要在代码中注意到这种情况的发生,并且十分清楚 myField 究竟是引用单个元素还是一个元素数组。

示例

在下面的例子中,valueGetter 函数将使用一个 for 循环来遍历 valueTest 表单中的元素数组。msgWindow 窗口将显示表单中所有元素的名称:

newWindow=window.open("http://home.netscape.com") function valueGetter() {
   var msgWindow=window.open("")
   for (var i = 0; i < newWindow.document.valueTest.elements.length; i++) {
      msgWindow.document.write(newWindow.document.valueTest.elements[i].name + "<BR>")
   }
}

参看

Submit.value

type

对于所有的 Submit 对象,属性的值都是“submit”。该属性指定了表单元素的类型。

属性源 Submit
只读
实现版本 Navigator 3.0

示例

下面的例子将在表单上写出每个元素的 type 属性。

for (var i = 0; i < document.form1.elements.length; i++) {
   document.writeln("<BR>type 为 " + document.form1.elements[i].type)
}

value

反映了提交按钮的 VALUE 属性的字符串。

属性源 Submit
只读
实现版本 Navigator 2.0

安全性

Navigator 3.0:该属性默认是带有污点的。有关数据污点的更多信息,请看“JavaScript 的安全性”

描述

如果在 HTML 中指定了 VALUE 属性,value 属性就是在按钮的表面上显示的文本。如果没有在 HTML 中指定 VALUE 属性,该按钮的 value 属性就为字符串“Submit Query”。

不要混淆 value 属性和 name 属性。name 属性不会显示在屏幕上;它只用于编程时对该按钮的引用。

示例

下面的函数将计算一组按钮的 value 属性,并将其显示在 msgWindow 窗口中:

function valueGetter() {
   var msgWindow=window.open("")
   msgWindow.document.write("submitButton.value 为 " +
      document.valueTest.submitButton.value + "<BR>")
   msgWindow.document.write("resetButton.value 为 " +
      document.valueTest.resetButton.value + "<BR>")
   msgWindow.document.write("helpButton.value 为 " +
      document.valueTest.helpButton.value + "<BR>")
   msgWindow.document.close()
}
这个例子将显示下列值:

Submit Query
Reset
帮助
上面的例子假定如下定义了按钮:

<INPUT TYPE="submit" NAME="submitButton">
<INPUT TYPE="reset" NAME="resetButton">
<INPUT TYPE="button" NAME="helpButton" VALUE="帮助">

参看

Submit.name

方法

blur

将焦点从提交按钮移开。

方法源 Submit
实现版本 Navigator 2.0

语法

blur()

参数

参看

Submit.focus

click

模拟对提交按钮的单击,但不触发对象的 onClick 事件句柄。

方法源 Submit
实现版本 Navigator 2.0

语法

click()

参数

focus

将焦点移至提交按钮上。

方法源 Submit
实现版本 Navigator 2.0

语法

focus()

参数

参看

Submit.blur

handleEvent

调用指定事件的控制句柄。

方法源 Submit
实现版本 Navigator 4.0

语法

handleEvent(event)

参数

event 你想要调用的对象的某一事件控制句柄的名称。

描述

要获得关于事件句柄的更多信息,请看“关于事件的常规信息”


【目录】 【上一页】 【下一页】 【索引】

返回页面顶部