js重置form表单

CreateTime--2017年7月19日10:37:11
Author:Marydon

需要使用的方法:reset()

示例:

  HTML部分

<form id="test">
    <input id="test2" type="hidden" value="2"/>
    <textarea>测试是否会重置文本域,默认带值的不会被清空</textarea>
    <textarea id="test3"></textarea>
            测试手工录入<input type="text" value=""/>
    <input type="text" value="设置初始值" id="test4"/>
    <input type="button" value="重置" onclick="testReset();"/>
    <input type="button" value="赋值" onclick="assignment();"/>
    <select>
        <option value="">请选择</option>
        <option value="" selected>测试是否会重置下拉框</option>
        <option value="">下拉框选中选项会被还原</option>
    </select>
    <!-- 经测试该值不会被还原 -->
    <input id="test5" type="hidden" value="测试隐藏域通过js改变后会不会还原"/>
</form>

  JAVASCRIPT部分

function testReset () {
    document.getElementById("test").reset();
    alert($(‘#test5‘).val());
}
function assignment () {
    $(‘#test3‘).val(‘通过js赋值或手工录入的信息都会被清空!‘);
    $(‘#test4‘).val(‘改变初始值‘);
    $(‘#test5‘).val(‘5‘);
    alert($(‘#test5‘).val());
}

经测试,总结:

  1.特别注意:reset()方法实现的效果是还原,而不是重置(清空);

    例:带默认值的form表单标签(如:textarea,文本框),经用户修改后,调用重置方法,会被还原成初始值(默认值);

      调用重置方法后,下拉框会选中初次加载页面时选中的选项。

  2.重置reset()对隐藏域无效,即不会对隐藏域进行还原处理,隐藏域通过js改变后不会被还原;

  3.准确地说,jQuery没有重置form表单的方法,$(‘#test‘)[0].reset(),这种重置form表单的方法还是通过js实现的,因为:$(‘#test‘)[0]会将jQuery元素转换成dom元素。

时间: 2024-10-11 05:34:27

js重置form表单的相关文章

js模拟form表单提交数据, js模拟a标签点击跳转,避开使用window.open引起来的浏览器阻止问题

js模拟form表单提交数据源码: /** * js模拟form表单提交 * @param {object} 参数对象 * url 必填 提交地址 * methond 选填 默认post 提交方式 post get * target 选填 默认_self 当前页面还是新页面 _self _blank * 其它参数 */ function jsFormSubmit(params) { var turnForm = document.createElement("form"); //一定要

原生js实现form表单序列化

大家都知道在jquery中有相应的表单序列化的方法: 1.serialize()方法 格式:var data = $("form").serialize(); 功能:将表单内容序列化成一个字符串. 这样在ajax提交表单数据时,就不用一一列举出每一个参数.只需将data参数设置为 $("form").serialize() 即可. 2.serializeArray()方法 格式:var jsonData = $("form").serialize

js阻止form表单重复提交

防止表单重复提交的方法总体来说有两种,一种是在js中阻止重复提交:另一种是在后台利用token令牌实现,大致思路是生成一个随机码放到session和form表单的隐藏输入框中,提交表单时两者对比,表单处理完毕清空或者修改session中的token. 在js中处理简单易懂,同时能解决我现在所做的项目中的问题,目前暂用js处理,后期如有需要再研究token机制.代码如下: 1.表单提交后禁用提交按钮(在本项目中表单提交完成后,如果处理成功都把form表单关掉了) 1 /** 2 * form表单格

------------参数传递的四种形式----- URL,超链接,js,form表单

什么时候用GET,  查,删, 什么时候用POST,增,改  (特列:登陆用Post,因为不能让用户名和密码显示在URL上) 4种get传参方式 <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> <title>&

使用js提交form表单的两种方法

提交form表单的时候瑶族一些简单的验证,验证完后才能提交,避免无效提交. 1.当输入用户名和密码为空的时候,需要判断.这时候就用到了校验用户名和密码,这个需要在前端页面写:有两种方法,一种是用submit提交.一种是用button提交.方法一: 在jsp的前端页面的头部插入一个js方法: function checkUser(){ var result = document.getElementById("userid").value; var password = document

***四种参数传递的形式——URL,超链接,js,form表单

什么时候用GET,  查,删 什么时候用POST,增,改  (特列:登陆用Post,因为不能让用户名和密码显示在URL上) 4种get传参方式 <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> <title>&l

js获取上传文件后缀名(附js提交form表单)

代码如下: <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=gb2312"> <script> function check_file()  {   var strFileName=form1.FileName.value;   if (strFileName=="")   {     alert(&

JS控制form表单action去向

http://blog.csdn.net/w709854369/article/details/6261624 不知道大家遇没遇到这种情况,当我们提交一个表单的时候,可能因为相关的参数不同而需提交给不同的action地址.这时我们就可以用JS来实现这种功能.===============把相同的内容提交到不同的页面=============== [javascript] view plaincopy <mce:script type="text/javascript">&l

js: 将 form表单序列化

form的序列化,即将表单中的键值序列化为可提交的字符串 表单    <form id="target">        <select name="age">             <option value="age1">20</option>             <option value="age2" selected>21</option>