我目前正在处理http://www.webslesson.info/2017/07/live-add-edit-delete-datatables-records-using-php-ajax.html上的以下示例(此页面上已列出整个代码) - 除了NewLine / Carriage返回之外,一切都适用于我。
每当我按下'输入'在First Name
或Last Name
字段中输入密钥,为了添加新行,它基本上无法识别它。
在源页面文件中,我在:function fetch data()之后添加了下面列出的代码 - 请参阅链接:http://jsbin.com/yufovobinu/edit?html,output 但似乎它没有帮助,回车/新行仍未在姓氏字段中识别。我使用“姓氏”字段作为一般示例,但它会发生在我输入该字段的任何文本中。 此外,我还提供了一个视频,可视化我在“姓氏”中输入文字时会发生什么。字段然后点击'输入'键和为了将数据插入mysql数据库(它发送没有新行的数据并返回没有新行):http://www.filedropper.com/issue
请帮忙!提前致谢!
$(document).ready(function() {
$('#user_data').keyup(function() {
$('#data2').html($(this).val().replace(/\r?\n/g, '<br />'));
答案 0 :(得分:0)
好的,现在我明白你要做的是什么。您根本不需要keyup
事件,也可以按原样发送数据,并将其存储在数据库中,文本中的新行字符不变。
为了在打印表时正确显示存储的值,您必须从PHP输出:
echo nl2br(htmlentities($row['columnName']));
htmlentities阻止执行其他HTML标记(XSS漏洞),然后使用PHP的本机优化函数以智能方式替换具有\r, \r\n, \n
标记的所有类型的新行(<br>
){ {1}}。