在文本区域中按 Shift Enter:生成新行
当用户在文本区域内按下 Enter 键时,提交表单是预期的行为。但是,如果同时按下 Shift 和 Enter,通常需要将插入符号移至新行而不是提交表单。
解决方案:
这个问题有两个主要解决方案问题:
1。修改现有代码:
如果存在导致 Enter 提交表单的现有脚本,请修改它以检查 Shift 键。这是一个示例:
if (evt.keyCode == 13 && !evt.shiftKey) { form.submit(); }
2。使用 JavaScript 和 jQuery:
如果您无权访问现有代码,请使用 JavaScript 和 jQuery 实现此解决方案:
$("#your_textarea_id").keydown(function(evt) { if (evt.keyCode == 13 && evt.shiftKey) { pasteIntoInput(this, "\n"); evt.preventDefault(); } }).keypress(function(evt) { if (evt.keyCode == 13 && evt.shiftKey) { pasteIntoInput(this, "\n"); evt.preventDefault(); } });
此代码将插入换行符(n) 当按下 Shift Enter 时进入文本区域,防止表单正在提交。
以上是如何防止在文本区域中按 Shift Enter 时提交表单?的详细内容。更多信息请关注PHP中文网其他相关文章!