2013-10-09 51 views
0

這是我如何定義日期字段。清除日期字段,儘管給予只讀

<td colspan="2" height="22px"> 
    <input type="text" readonly="readonly" name="fromDate" id="fromDate" size="35%"> 
</td> 

我試圖

$("#fromDate").keypress(function(e) { 
    switch(e.keyCode) { 
     case 46: // delete 
     case 8: // backspace 
      break; 
     default: 
      e.preventDefault(); 
      break; 
    } 
}); 

當我使用上面的一塊,我可以用退格鍵和刪除。對於數字,e.keyCode只給出警報框中的值0!箭頭工作

這使得我的字段不可編輯。就像我無法使用退格鍵一樣。我需要只讀,所以我不能刪除它。有人可以幫助我通過退格/刪除字段來實現編輯字段嗎?

謝謝

瞭解,給空間鍵入數字是不合邏輯的。其餘的東西工作正確。感謝您的建議。

回答

0

readonly意味着只是 - 沒有key事件將被處理,輸入只能以編程方式修改。如果你想要的值被清除,你需要包括一個「清除」按鈕,使用一個單獨的元素:

<td colspan="2" height="22px"> 
    <input type="text" readonly="readonly" name="fromDate" id="fromDate" size="35%"> 
    <button class="clear-date">Clear</button> 
</td> 
$('.clear-date').click(function() { 
    $('#fromDate').val(''); 
}); 
+0

我先把光標定位在球場上,並通過將其清除保持一個單獨的按鈕來重置它。 – sahana

+0

@sahana你的意思是,雖然點擊重置按鈕,你需要清除文本框並重點相同? –

+0

我得到了解決方案。謝謝你的幫助Rory和Vinoth – sahana

0
$("#fromDate").keypress(function(e) { 
    switch(e.keyCode) { 
     case 46: // delete 
     case 8: // backspace 
      break; 
     default: 
      e.preventDefault(); 
      break; 
    } 
});