Disable New Line in Textarea when Pressed ENTER
每当有人按
因此,当按shift enter时,
这是jsfiddle演示:
http://jsfiddle.net/bxAe2/14/
试试这个
1 2 3 4 5 6 7 8 | $("textarea").keydown(function(e){ // Enter was pressed without shift key if (e.keyCode == 13 && !e.shiftKey) { // prevent default behavior e.preventDefault(); } }); |
将您的小提琴更新为
1 2 3 4 5 6 7 8 9 | $(".Post_Description_Text").keydown(function(e){ if (e.keyCode == 13 && !e.shiftKey) { // prevent default behavior e.preventDefault(); //alert("ok"); return false; } }); |
下面的代码是为了防止调整" textarea"的大小,避免在textarea内滚动条,并防止在按Enter键时进入下一行。
style.css
1 | textarea {height:200px; width:200px;overflow:hidden;resize: none;} |
index.html
1 | <textarea></textarea> |
Script.js
1 2 3 4 5 6 7 8 | $("textarea").keydown(function(e){ // Enter pressed if (e.keyCode == 13) { //method to prevent from default behaviour e.preventDefault(); } }); |
对于Angular用户
虽然存在现有的解决方案,但是如果有人使用Angular遇到此问题,则可以使用以下命令禁用新行:
添加
在您的控制器中,添加:
1 2 3 4 5 6 | $scope.$watch('your.model', function(newvalue, oldvalue) { if (newvalue && newvalue.indexOf('\ ') > -1) { $scope.your.model = oldvalue; } }); |
1 2 3 4 5 6 7 8 9 10 11 | $(".Post_Description_Text").keypress(function(event) { if (event.which == 13) { alert("Function is Called on Enter"); event.preventDefault(); //Add this line to your code } }); |
在HTML
中使用