Javascript 我可以使用变量传递json字符串吗?
此代码适用于:Javascript 我可以使用变量传递json字符串吗?,javascript,jquery,Javascript,Jquery,此代码适用于: $(this).load($('.pageloadlabel', this).attr('href'), {category: 1}); 此代码不起作用: var data = '{category: 1}'; $(this).load($('.pageloadlabel', this).attr('href'), data); 问题是,我如何使它工作?它不是JSON,而是javascript对象 var data = { category: 1 }; 如果你有一根绳子,你
$(this).load($('.pageloadlabel', this).attr('href'), {category: 1});
此代码不起作用:
var data = '{category: 1}';
$(this).load($('.pageloadlabel', this).attr('href'), data);
问题是,我如何使它工作?它不是JSON,而是javascript对象
var data = { category: 1 };
如果你有一根绳子,你就必须这样做
请注意,您的字符串不是有效的JSON,有关详细信息,请参阅链接。它不是JSON,而是javascript对象
var data = { category: 1 };
如果你有一根绳子,你就必须这样做
请注意,您的字符串不是有效的JSON,有关详细信息,请参阅链接。您是否尝试对数据使用
eval()
var data = '{category: 1}';
$(this).load($('.pageloadlabel', this).attr('href'), eval(data));
您是否尝试对数据使用
eval()
var data = '{category: 1}';
$(this).load($('.pageloadlabel', this).attr('href'), eval(data));
去掉引号,加载函数需要的是对象,而不是字符串。去掉引号,加载函数需要的是对象,而不是字符串。您的数据不是Javascript对象,而是字符串,您可以通过eval将其转换为对象,例如
data = eval('(' + data + ')');
但eval被认为是危险的,所以最好将字符串解析为JSON,例如
data = JSON.parse(data)
对于JSON库,您可以使用您的数据不是Javascript对象而是字符串,您可以通过eval将其转换为对象,例如
data = eval('(' + data + ')');
但eval被认为是危险的,所以最好将字符串解析为JSON,例如
data = JSON.parse(data)
对于JSON库,您可以使用在分配给数据时尝试删除JSON周围的引号。在分配给数据时尝试删除JSON周围的引号。我可以使用JSON库解决我的问题。谢谢。我能够使用JSON库解决我的问题。非常感谢。