$('i.icon-angle-up').on('click', function() {
var data = {$(this).attr('name') : 'asc')}
$.post('', data, function() {
window.location.reload();
});
});
我想将一些数据发布到服务器,但数据的名称来自变量($(this).attr('name')),我该怎么办?
我试过了
$.post('', {"$(this).attr('name')" : 'asc')}, function() {
window.location.reload();
});
但是进展不顺利。
谢谢大家。
答案 0 :(得分:3)
对象的键不能是动态的,在这种情况下,您需要使用bracket notation来创建对象。
尝试
var data = {};
data[$(this).attr('name')] = 'asc'
$.post('', data, function() {
window.location.reload();
});
答案 1 :(得分:0)
其他选项是使用带有eval(evil)的对象:
var data = {};
eval('data.' + $(this).attr('name') + ' = \'asc\'');