我有一個textarea字段,我希望用戶不能輸入HTML標籤它textarea。限制用戶輸入HTML標籤到一個textarea使用jquery
這可能嗎?
例
<textarea rows="4" cols="30" id="textareadescription"></textarea>
在該用戶不能進入HTML標籤,如
<button> Submit </button>
我有一個textarea字段,我希望用戶不能輸入HTML標籤它textarea。限制用戶輸入HTML標籤到一個textarea使用jquery
這可能嗎?
例
<textarea rows="4" cols="30" id="textareadescription"></textarea>
在該用戶不能進入HTML標籤,如
<button> Submit </button>
,你可以做這樣的
function Check(){
var reg =/<(.|\n)*?>/g;
if (reg.test($('#YourTextAreaID').val()) == true) {
var ErrorText ='do not allow HTMLTAGS';
alert('ErrorText');
}
}
更多信息
以下是你可以去的選項:
是重新處理textarea的內容
function reProcessText(){
var text= $('myTextArea').html();
var startTag=-1;
var endTag=-1;
for(var i=0;i<text.length;i++){
if(text[i]=='<')
startTag=i;
if(text[i]=='>')
endTag=i;
if(startTag != -1 && endTag!=-1){
text = text.substring(0,startTag) + text.substring(startTag+1, endTag);
startTag=endTag=-1;
}
}
}
我寫了一個超級簡單的算法中查找和替換HTML標籤的腳本。當然,根據您的需要,您可能必須採用更復雜的一種。
的情景:在文字區域
所以,你想要做的是:
你可以在這裏使用jquery的html()和text()函數。
例如: 如果使用這個,結果div將生成一個按鈕。
<textarea rows="4" cols="30" onkeyup="$('#divDesc').html($('#textareadescription').val());" id="textareadescription"></textarea>
<div id="divDesc"> Result </div>
但是如果你使用這個,結果DIV不會產生按鈕,但顯示的值:
<textarea rows="4" cols="30" onkeyup="$('#divDesc').text($('#textareadescription').val());" id="textareadescription"></textarea>
<div id="divDesc"> Result </div>
您可以阻止用戶進入<
和>
跡象,如果這些是不是真的您的輸入文字需要。
下面的JavaScript代碼這樣做:
$(function(){
$('#textareadescription').on("keydown", function(e){
if (e.shiftKey && (e.which == 188 || e.which == 190)) {
e.preventDefault();
}
});
});
試用演示這裏的工作:http://jsfiddle.net/AHrrP/1/
wat如果我想寫這樣的文本:500> 400?此外,我總是可以複製並粘貼 –
有效點@Manish。取決於Ishan想成爲多少人。 –
你爲什麼想這樣做?你可以使用jquery/javascript來捕獲按鍵,並禁用它。但那會很煩人。相反,讓他們寫和提交後,你過濾出所有的HTML標籤由一個簡單的字符串替換alogrithm –
[這裏](http://stackoverflow.com/questions/302122/jquery-event-keypress-which-key-was-按下)。這是如何捕捉按鍵的功能 –
禁用控制可以幫助你嗎? '