我必须做一个黑客才能使用jQuery提交表单(非ajax)。
如果我不执行if
声明,表单将不会提交:
$("#myHiddenFieldID").val(JSON.stringify(jsObject));
var x = $("#myHiddenFieldID").val();
if (x) {
$("#myHiddenForm").submit();
}
$("#myHiddenFieldID").val(JSON.stringify(jsObject));
var x = $("#myHiddenFieldID").val();
// I used to put an alert here, which was shown __before__ the text appeared in the text field???!!!
$("#myHiddenForm").submit();
我不明白,为什么我必须在这里阅读文本域内容...
答案 0 :(得分:2)
由于hoisting,赋值语句在值传递给文本字段之前执行:
var x = $("#myHiddenFieldID").val();
$("#myHiddenFieldID").val(JSON.stringify(jsObject));
$("#myHiddenForm").submit();