2015-04-29 66 views
1

我有一個關於asp.net中的文本框的問題。例如,我有一個文本:P-70101002-00089-0,我希望只有這部分內容:「70101002」是隻讀的,其他部分是用戶能夠編輯的。 模板總是相同的,只是數字發生了變化。 有沒有機會使用asp.net或任何JavaScript? 謝謝如何使文本框一半隻讀

+3

如果我是你,我會簡單地把2個文本框,刪除其右/左邊框,給人的印象是是一個單獨的文本框,並允許正確的文本框被寫入,但不是左側的文本框。 –

+0

只需將標籤用於前綴和後綴,並將輸入作爲您想要從用戶獲取的內容? –

+0

爲此使用掩蔽。 – Mairaj

回答

1

你可以嘗試這樣的:

var x = $('#myId').val().length; 
$('#myId').on('keypress, keydown', function(event) {  
    if ((event.which != 37 && (event.which != 39)) 
     && ((this.selectionStart < x) 
     || ((this.selectionStart == x) && (event.which == 8)))) { 
     return false; 
    } 
}); 

JSFIDDLE DEMO

+0

右鍵單擊,粘貼,這不起作用。我會聽取'輸入'事件。 – Rudy

+0

我不能在asp中使用value =「70101002」,因爲它用於其他示例。我在asp.net中使用它。 user2568960

+0

@ user2568960: - 您可以像這樣對CSS和HTML進行更改:http://jsfiddle.net/kaf4j/9/ –