2013-03-12 43 views

回答

1

人們只能假設你在談論一個TEXTAREA html標記,在這種情況下,你最好的選擇是使用JavaScript正則表達式替換插入新行,你可以將它附加到OnChange事件。

編輯這個JS小提琴似乎工作。我使用'keyup'事件而不是'change'。 http://jsfiddle.net/sUS5s/

HTML

<textarea id="demo" rows="5" cols="65"></textarea> 

JS

$("#demo").keyup(function(event) { 
    var txt = $(this).val(); 
    $(this).val(txt.replace(/([^\r\n]{35})/gm, "$1\r")); 
}); 

簡單用正則表達式替換替代。匹配35個連續的非換行符,並用自己換行換行。

這將工作,如果你不斷鍵入轉發,你需要一些更復雜的東西,讓你插入到以前的行等沒有新的線路歪斜。

編輯沒有jQuery的

document.getElementById("demo").onkeyup = function() { 
    var txt = document.getElementById("demo").value; 
    document.getElementById("demo").value = txt.replace(/([^\r\n]{35})/gm, "$1\r"); 
}; 
+0

取決於他是否可以使用jQuery,或者他是否需要常規js – 2013-03-12 12:20:48

+0

@Jeff Shaver - 將它轉換爲直接的JavaScript很容易/容易 – 2013-03-12 12:38:20

+0

同意。更改了投票。 – 2013-03-12 12:43:08

相關問題