誰かが押すたびに関数を呼び出しています enter textarea
で。今、私はnew line
またはbreak
を無効にします enter が押されます。
new line
は次の場合に機能するはずです shift+enter が押されます。その場合、関数は呼び出されません。
Jsfiddleデモは次のとおりです。 http://jsfiddle.net/bxAe2/14/
これを試して
$("textarea").keydown(function(e){
// Enter was pressed without shift key
if (e.keyCode == 13 && !e.shiftKey)
{
// prevent default behavior
e.preventDefault();
}
});
フィドルを更新する
$(".Post_Description_Text").keydown(function(e){
if (e.keyCode == 13 && !e.shiftKey)
{
// prevent default behavior
e.preventDefault();
//alert("ok");
return false;
}
});
For Angular Usersの場合
既存の実用的なソリューションがありますが、誰かがAngularを使用してこの質問に出くわした場合、次の方法で新しい行を無効にできます。
追加 <textarea ng-trim="false" ng-model='your.model' ...
コントローラーで、以下を追加します。
$scope.$watch('your.model', function(newvalue, oldvalue) {
if (newvalue && newvalue.indexOf('\n') > -1) {
$scope.your.model = oldvalue;
}
});
$(".Post_Description_Text").keypress(function(event) {
if (event.which == 13) {
alert("Function is Called on Enter");
event.preventDefault(); //Add this line to your code
}
});