我发现警报窗口和新行有很多不同的问题。大多数是 \n
在 PHP 中被视为新行而不是发送到 javascript。
在我的例子中,字符串在显示 \n
的新窗口中输出。我只是尝试通过 jsfiddle 将 \n
实际写入警告框,并且成功了,所以这一定是我做事的方法......
这是返回到控制台的字符串。如您所见,\n 肯定存在:
需要用户名\n需要密码\n需要邮箱\n需要手机\n需要卡号
但是,它是这样显示的:
为什么会这样?我认为它可能与数据类型有关,因为它是从 $.ajax
if (canAjax && !try_ajax) {
e.preventDefault();
$.ajax({
type: "POST",
url: "mobilesubmit.php",
data: {"use_ajax": true, "formdata": $("#register_form").first().serializeArray()},
success: function(data) {
// This stupid thing should make new lines!
alert(data);
console.log(data);
},
error: function (request, status, error) {
try_ajax = true;
$("#register_form").submit();
}
});
}
最佳答案
如果您的控制台日志显示的是 \n
而不是换行,则意味着 \
在原始字符串中被转义了...
比较
console.log(1,"\\n\\n");
console.log(2,"\n\n");
解决方案
使用 .replace()
将你的 \n
换成换行符
console.log(3,"\\n\\n".replace(/\\n/g,"\n"))
关于javascript - 为什么新行在此 javascript 警报窗口中不起作用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8967722/