Web表单提交之disabled问题js解决方法

 更新时间:2015年01月13日 15:02:01   投稿:shichen2014  
这篇文章主要介绍了Web表单提交之disabled问题js解决方法,分析了通过js解决保存值也能保留用户不能输入的功能,具有一定参考借鉴价值,需要的朋友可以参考下

本文实例讲述了Web表单提交之disabled问题js解决方法。分享给大家供大家参考。具体分析如下:

例如,有如下表单

复制代码 代码如下:
<form id="inputForm" action="shorttermrental.action" method="post">
     <input name="pname" type="text" id="pname" value="xxx" size="20" disabled="disabled"/>
     <input name="but" type="submit" id="but" value="xxx" size="20"/>
</form>

当我们提交表单时,在后台是获取不了pname数据的,因为该输入框的属性disabled。即能保存值也能保留用户不能输入这种功能有以下解决方法:

1. 将disabled="disabled"属性改为readonly="readonly"代替,其功能是基本一样,readonly还能支持onfocus事件。(推荐使用)

复制代码 代码如下:
<input name="xxx" id="xxx" value="xxx" size="20" readonly="readonly"/>

2. 在form表单提交时利用js将disabled属性修改
复制代码 代码如下:
<input name="but" type="button" id="but" value="xxx" size="20"/>
<script type="text/javascript">
function submit_form(){
 //javascript写法
 document.getElementById("pname").disabled="";
 document.getElementById("inputForm").submit();
 //jQuery写法
 $("#pname").attr("disabled",false);
 $("#inputForm").submit();
}
</script>

3. 将pname的值用js获取,使用参数形式传递,修改form的action值,当然这样需要修改后台代码,获取该参数(getParameter);
复制代码 代码如下:
<script type="text/javascript">
function submit_form(){
    //jQuery写法
      var pname = $("#pname").val();
 $("#inputForm").attr("action","shorttermrental.action?panme="+pname+"&p="+new Date());
    $("#inputForm").submit();
  //javascript写法
    var pname = document.getElementById("pname").value;
    document.getElementById("pname").action = "shorttermrental.action?panme="+pname+"&p="+new Date();
    document.getElementById("pname").submit();
    }
</script>

一点小建议:当我们书写脚本语言时,我们一般热衷于jQuery书写,因为它很简炼,jQuery是将javascript封装的,取HTML等值时,采用正则表达式匹配获取,
因此必然影响效率,所以建议大家当有大量脚本时,一般采用javascript。

希望本文所述对大家的javascript程序设计有所帮助。

相关文章

  • JS window对象的top、parent、opener含义介绍

    JS window对象的top、parent、opener含义介绍

    本文为大家介绍下JS window对象的top、parent、opener含义,不了解的朋友可以参考下,希望对大家有所帮助
    2013-12-12
  • 基于JavaScript实现动态添加删除表格的行

    基于JavaScript实现动态添加删除表格的行

    又一个动态控制表格的效果,用JavaScript动态生成表格行、表格列,以及还可动态删除这些行列,行等,运行代码后,点击对应的功能按钮,即可实现对应的表格操作功能,接下来通过代码实例给大家介绍JavaScript实现动态添加删除表格的行,需要的朋友参考下
    2016-02-02
  • 微信小程序记住密码的功能简单几步实现

    微信小程序记住密码的功能简单几步实现

    软件中的“记住密码”选框不知道大家平时会不会勾选,反正对于一个重度懒癌患者的我来说就没有不勾选的时候,毕竟隔一段时间就重新输入一遍难记又难输的账号密码,想想就让人头皮发麻。今天教大家用代码在微信小程序中实现这个简单的小功能
    2023-01-01
  • javascript 字符 Escape,encodeURI,encodeURIComponent

    javascript 字符 Escape,encodeURI,encodeURIComponent

    下面是对字符串编码转换功能函数大家,大家可以根据实际需要选择使用。
    2009-07-07
  • Webpack的Loader和Plugin的区别

    Webpack的Loader和Plugin的区别

    这篇文章主要介绍了Webpack的Loader和Plugin的区别,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-11-11
  • 细说webpack源码之compile流程-入口函数run

    细说webpack源码之compile流程-入口函数run

    Webpack 是一个前端资源加载/打包工具。它将根据模块的依赖关系进行静态分析,然后将这些模块按照指定的规则生成对应的静态资源。这篇文章主要介绍了webpack源码之compile流程-入口函数run,需要的朋友可以参考下
    2017-12-12
  • 仿YAHOO的一个小效果 下拉效果

    仿YAHOO的一个小效果 下拉效果

    [红色]仿YAHOO的一个小效果 下拉效果...
    2006-11-11
  • Ajax请求时无法重定向的问题解决代码详解

    Ajax请求时无法重定向的问题解决代码详解

    这篇文章主要介绍了Ajax请求时无法重定向的问题解决代码详解,当使用Ajax请求时,如果后台进行重定向到其他页面时是无法成功的,只能在浏览器地址栏输入才能够实现重定向。下面我们来看看解决方法吧
    2019-06-06
  • Js自动截取字符串长度,添加省略号(……)的实现方法

    Js自动截取字符串长度,添加省略号(……)的实现方法

    下面小编就为大家带来一篇Js自动截取字符串长度,添加省略号(……)的实现方法。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-03-03
  • 判断checkbox选择的个数 多浏览器

    判断checkbox选择的个数 多浏览器

    判断checkbox选择的个数 多浏览器...
    2006-09-09

最新评论