DIV CSS 佈局教程網

 DIV+CSS佈局教程網 >> 網頁腳本 >> JavaScript入門知識 >> 關於JavaScript >> Web表單提交之disabled問題js解決方法
Web表單提交之disabled問題js解決方法
編輯:關於JavaScript     

本文實例講述了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程序設計有所幫助。

XML學習教程| jQuery入門知識| AJAX入門| Dreamweaver教程| Fireworks入門知識| SEO技巧| SEO優化集錦|
Copyright © DIV+CSS佈局教程網 All Rights Reserved