2013-07-04 221 views
14

我在加載頁面時禁用了輸入後遇到問題。jQuery .prop(「disabled」,false)未啓用輸入

我使用兩個輸入來接受兩個日期,但我希望第二個輸入不啓用,直到第一個輸入有一個值。

<div id="date1" data-role="fieldcontain"> 
<label for="date1-start" id="date1-startlbl">Start Date</label> 
<input name="date1-start" id="date1-start" type="date" data-role="datebox"data-options='{"mode": "calbox", "overrideDateFormat": "%Y-%m-%d", "beforeToday": true}' data-theme="a" onchange="showdate()"/> 
<label for="date1-end" id="date1-endlbl">End Date</label> 
<input name="date1-end" id="date1-end" type="date" data-role="datebox" data-options='{"mode": "calbox", "overrideDateFormat": "%Y-%m-%d", "beforeToday": true}' data-theme="a" onchange="datechart()"/> 
</div> 

第二個輸入在頁面加載時被成功禁用。

$("#date1-end").prop("disabled", true); 

第一次的日期調用以下功能

function showdate() 
{ 
    if ($("#date1-start").val() != null) 
     { 
      if ($("#date1-end").val() != "") 
       { 
        datechart(); 
       } 
      else 
       { 
        $("#date1-end").prop("disabled", false); 
        $("#date1-end").trigger('change'); 
       } 
     } 
} 

的函數被調用和支撐(「禁用」,假的),當沒有任何錯誤達到火災的onchange事件,但輸入遺體禁用。我使用的觸發器('更改')是嘗試刷新元素,但沒有它的情況下也存在相同的問題。

我已經嘗試了不同版本的舊版Jquery的.attr,但我也遇到了同樣的問題。我使用jQuery 1.9.1和jQuery移動1.3.1和2.7.0的PhoneGap

任何指着我的方向是正確的幫助

,將不勝感激。

+0

的可能重複[試圖禁用一個文本輸入字段,如果以前的字段爲空(http://stackoverflow.com/questions/9929817/trying-to-disable-a-text-輸入字段,如果前一字段是空白的) – Gajotres

回答

7

工作例如:http://jsfiddle.net/d9vzs/

這不是你如何啓用禁用jQuery Mobile的輸入元素。

它可以用這個功能來完成:

$("input").textinput("disable"); 


$("input").textinput("enable"); 

正式文件:http://api.jquerymobile.com/textinput/#method-disable

+0

這很好。應該查看Jquery移動文檔,而不僅僅是查詢Jquery。謝謝。 – RichardMc

+1

你的兩個功能有什麼區別? –

+0

@JeffPuckettII有一個錯字,我編輯了第二個功能「啓用」。 – hargobind

6

嘗試用removeAttr

$("#date1-end").removeAttr("disabled"); 

您還可以prop

$("#date1-end").prop("disabled",false); 
+0

對不起應該詳細說明.attr,我也試過這個,但我仍然遇到同樣的問題。 – RichardMc

+0

也嘗試我的另一個ans – Gautam3164

+1

這就是我原來使用的,但我得到同樣的問題。我已閱讀,我可能需要在啓用它後刷新元素。那有什麼道理嗎? – RichardMc

7

前段時間有同樣的問題試試:

$("#date1-end").prop("disabled", null); 

@ Gautam3164的回答是還不錯。

-4

道具是用來只是爲了讓值和設定值。請參閱本http://api.jquery.com/prop/

$("#date1-end").prop("disabled", false); 
+2

滾動您提供鏈接的頁面,在下面您會看到該prop也用於設置該值。 –

相關問題