我试图让一些使用jQuery的Django运行AJAX。问题是,我试图改变的元素ID没有设置,它是一个Django模板变量,所以它对表中的每个元素都是不同的,但我想用AJAX来更改该元素。我通过simplejson将Django视图中的字典传递给JavaScript,相关对象是ID和模型(不是真正的变量名称,只是想让我明白我在做什么)。一些伪代码(第三行,这样写巨蟒,因为我不知道如何做到这一点在JavaScript):可以将一个变量作为javascript中的元素ID传递
var quantity_update = function(msg, elem) {
var response_obj = eval('(' + msg + ')');
var newtotal = document.getElementById("%s, %s"); % (response_obj.id, response_obj.model)
subtotal.innerHTML = "<td>"+response_obj.subtotal+"</td>";
是这样的可能,如果又如何?
然后我应该能够得到这样的id:var newtotal = document.getElementById(id);也许。使用eval是因为有时我在字符串中传递字符串而不是字典 – Christopher
是的,包含字符串和字符串字符串的变量是完全可以互换的。至于错误,您可以尝试让服务器通过HTTP响应代码发出信号。这可以在客户端进行检测,因此您可以根据不同情况执行不同的操作。 – hugomg
我想这根本不是问题。我用join()做了类似的事情,得到了相同的结果,这个例子中的行应该是newtotal.innerHTML,但是任何小计(在我的实际代码中都是正确的)会返回为null。 – Christopher