jQuery 双引号
我有这样的形式:
<form name="myForm" action="#">
<input type="text" name="firstField" />
<input type="text" name="secondField" />
<input type="submit" name="submitButton" />
</form>
并且我有一个ajax请求:
$('input[type="submit"]').click(function(){
var serialized = $('form').serialize();
//ajax request
$.ajax({
type : "POST",
url : "takeAction.php",
data : serialized,
succes : function(){
alert('done');
}
});
});
问题是,如果我的任何字段值包含“'”,例如(谁是老板)我的ajax请求无法完成(我正在尝试更新mysql行,但是代码失败,我没有收到任何错误,只是我的行没有更新)。我知道这与引号有关,但我不知道该怎么做。谢谢
i have this form:
<form name="myForm" action="#">
<input type="text" name="firstField" />
<input type="text" name="secondField" />
<input type="submit" name="submitButton" />
</form>
and i have an ajax request:
$('input[type="submit"]').click(function(){
var serialized = $('form').serialize();
//ajax request
$.ajax({
type : "POST",
url : "takeAction.php",
data : serialized,
succes : function(){
alert('done');
}
});
});
the problem is that if any of my fields value contains "'", like (who's the boss) my ajax request fails to complete (i'm trying to update an mysql row but the code fails, i get no error just that my row is not updated). i know that it's something about quotes but i don;t know how to do it. thanks
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
问题出在服务器上的 PHP 代码中,而不是 HTML 或 JavaScript 中。
您可能将提交的数据值直接写入 SQL 查询,是吗?:
您需要使用 准备好的语句,或使用
mysql_real_escape_string()
转义您的值:The problem is in your PHP code on the server, not in your HTML or JavaScript.
You're probably writing the submitted data values directly into an SQL query, yes?:
You need to either use prepared statements, or use
mysql_real_escape_string()
to escape your values: