日期:2014-05-16  浏览次数:20371 次

在单独的js脚本文件中怎么给HTML文件中form的onsubmit事件怎么设置
HTML 文件中:
 <form action="" method="post" id="myform" > <dl class="register_row">
  <dt>Email地址:</dt>
  <dd><input id="email" type="text" class="register_input"></dd>
  <dd id="dd_email" ></dd>
  </dl>
  <dl class="register_row">
  <dt>设置昵称:</dt>
  <dd><input id="nickName" type="text" class="register_input"></dd>
  <dd id="dd_nickName"></dd>
  </dl>
  <dl class="register_row">
  <dt>设定密码:</dt>
  <dd><input id="pwd" type="password" class="register_input"></dd>
  <dd id="dd_pwd"></dd>
  </dl> 
  <dl class="register_row"> 
  <dt>再输入一次密码:</dt>
  <dd><input id="repwd" type="password" class="register_input"></dd>
  <dd id="dd_repwd"></dd>
  </dl>
  <dl class="register_row">
  <dt>性别:</dt>
  <dd><input name="sex" type="radio" value="男"> <label>男</label></dd>
  <dd> <input name="sex" type="radio" value="女"> <label>女</label></dd>
  <dd id="dd_sex"></dd>
  </dl>
  <dl class="register_row">
  <dt>所在地区:</dt>
  <dd><select id="province"></select></dd>
  <dd><select id="city"></select></dd>
  </dl>
  <div class="registerBtn"><input id="registerBtn" type="image" src="images/register_btn_out.gif" onClick="check()"></div>
  </form>
  <script src="JS/register.js"></script>
脚本文件中:
document.getElementById("myform").onSubmit="return check()";

------解决方案--------------------
JScript code
document.getElementById('myform').onsubmit = function(e) {
    var e = e || window.event;
    if (e.preventDefault) e.preventDefault();
    else window.event.returnValue = false;
}

------解决方案--------------------
就这这么两种方法啊,一种是在html代码form标签中写<form onsubmit="return check();" ...>,然后在js文件中定义好check()函数;另一种就是一楼的代码那样,直接在JS中绑定指定form元素的onsubmit事件。

两种方法的区别就是前一种只要check()函数返回false就能阻止表单提交,后一种需要通过event.preventDefault()(标准浏览器)或者window.event.returnValue = false;来阻止表单提交。