有关jq.ajax()使用json传参的问题

有关jq.ajax()使用json传参的问题

问题描述:

使用如下代码:
$.ajax({
type: "Post",
url: "Default.aspx/GetDir",
data: "{'str':'E:\Users'}",//这样可以
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function (data) {

alert(eval('(' + data.d + ')')[1].lasttime);
},
error: function () {
alert("error!!!");
}
});
获取Users文件夹下文件的信息(这里是获取的访问时间),测试通过。
可是,我想用变量获取文件夹地址,放到json中传参,就测试失败了。代码如下:

var folder2open="E:\Users"; //这里用变量获得Users的完整地址
$.ajax({
type: "Post",
url: "Default.aspx/GetDir",
data: "{'str':folder2open}", //注意这里的变化
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function (data) {

alert(eval('(' + data.d + ')')[1].lasttime);
},
error: function () {
alert("error!!!");
}
});
弹出对话框,提示“error!!!”。请问问题出在哪里?

data: "{'str':folder2open}"
->
data: "{'str':" + folder2open + "}"

data: {'str':folder2open}

多谢各位指点,我最后改为这样 data: "{'str':‘" + folder2open + "‘}" 通过了。一楼和二楼的试过了,都不行。