想要捕捉'输入'在HTML表单字段中按键

时间:2014-03-27 14:04:03

标签: java javascript jquery html forms

我有一个HTML表单文本字段(这是一个表单字段),我想要捕获最终用户放入该字段的整个文本以及按下新行的Enter键。如果我举个例子,假设,我将下面的字符串放在表单文本字段中,就像它在这里看到的那样:

I 
Pressed
Enter for a new Line.

现在,我想将这个字段输入保存到数据库中,就像最终用户填写它一样,因为我的数据库字符串可能看起来像这样

"I</br>Pressed</br>Enter for a new Line."

这对我来说很好。但是我不想把它存储起来像#34;我按下了Enter换新线。&#34;

无论如何我已经完成了。但是我的编码有很多问题。此外,我的要求是它应该以这样的方式实现,表明当表单打开进行编辑时可以应用相同的逻辑,并且数据库中的该文本字段中已经存在值。

有人可以帮帮我吗?

3 个答案:

答案 0 :(得分:3)

您可以使用replace()方法,

$("textarea").val().replace(/\n/g, "<br />")

修改

function captureEnter() {
 if (window.event.keyCode == 13) {
    document.getElementById("txtArea").value =document.getElementById("txtArea").value + "<br/>";
    return false;
}
else {
    return true;
}
}

HTML

<textarea id="txtArea" onkeypress="captureEnter();"></textarea>

答案 1 :(得分:0)

如果我理解正确,您希望在有人按下input的{​​{1}}时抓取,并将其替换为type=text。如果是这样,请使用onkepress事件,并侦听charcode 13,然后手动添加“
”。

<br/>

答案 2 :(得分:0)

您也可以使用 PHP nl2br()来执行服务器端:

$thetext = nl2br($_GET['textarea']);

http://php.net/manual/en/function.nl2br.php