我的网页上有一个复选框。根据复选框是否选中,变量 abc_test 需要更改为“wfOutput”或“_ blank”。
在初始加载时,变量的值为“wfOutput”,但由于某种原因,formTarget不会根据变量值对更改做出反应。如果我手动更改变量,一切正常,formTarget会收到正确的值。
<input id='runwindow' type='checkbox'>
var abc_test = "wfOutput";
$("#runwindow").change(function() {
if($(this).is(":checked")) {
abc_test = "_blank";
return;
}
abc_test = "wfOutput";
});
abc_test变量用于以下代码示例。
var ap = $("<div>").autoprompt(
{
wfdInfo:xmlInfo,
formTarget:abc_test,
}).autoprompt("instance");
任何想法我做错了什么?
答案 0 :(得分:4)
但由于某种原因,formTarget不会根据变量值对更改做出反应。
当你这样做时
var ap = $("<div>").autoprompt(
{
wfdInfo:xmlInfo,
formTarget:abc_test,
}).autoprompt("instance");
abc_test
的值被读取并分配给初始化程序创建的对象的formTarget
属性。之后对象属性和变量之间没有持续的连接;稍后更改abc_test
对对象属性无效。
您需要致电autoprompt
以更新formTarget
处理程序中的change
选项。大多数插件都提供某种“更新”方法。