我有这个代码,但这行有一些问题。
var dataString = 'name='+name&'id='+id;
发送的内容(萤火虫):
'id ' id
'name' name
如果我这样做,上面的行正常工作:var dataString = 'name='+name;
但是,我需要传递两个参数。这样做的正确方法是什么?
码
<script type="text/javascript">
$(function () {
$(".vote").click(function () {
var id = $(this).attr("id");
var name = $(this).attr("name");
var dataString = 'name='+name&'id='+id;
if (name == 'up') {
$.ajax({
type: "POST",
url: "url.php",
data: dataString,
cache: false,
success: function (html) {
}
});
return false;
});
});
</script>
答案 0 :(得分:6)
你应该这样做:
var dataString = { name: name, id: id}
而不是
var dataString = 'name='+name&'id='+id;
这样您就可以确保提供的值是正确的URI编码。
答案 1 :(得分:3)
试试这个:
var dataString = 'name='+name+'&id='+id;
而不是
var dataString = 'name='+name&'id='+id;
&amp;应该在''里面,你需要额外的+来连接“name”变量和'&amp; id ='字符串。所以这应该有用。
<强> UPD:强>
你也可以这样做:
var dataString = { name: name, id: id }