我正在使用jQuery与Django来做表格的一些事情。我有以下javascript:
$("#pending_table").tablesorter({
headers: {5 + {{somevariable}}: {sorter:false},6 + {{somevariable}}: {sorter:false}}
});
(我省略了一堆其他不相关的选项)
导致问题的部分是标题字典定义中的添加。查看生成的网页的来源,我可以看到{{somevariable}}正确转换为其值4,因此它不是与Django相关的问题。
总结:“5 + 4:值”不起作用,“9:值”确实有效。
我假设我在某种程度上弄错了javascript的语法。
帮助?
答案 0 :(得分:3)
Javascript对象文字只允许文字作为键。换句话说,您不能将计算表达式作为键。例如,这是不允许的:
headers = {
(1 + 2): 4
}
那就是说,你可以这样做来规避这种限制:
headers = {};
headers[1 + 2] = 4;
在您的情况下,您似乎想要执行以下操作:
var headers = {};
headers[5 + someVar] = {sorter: false};
headers[6 + someVar] = {sorter: false};
$("#pending_table").tablesorter({
headers: headers
});