我试图使用jQuery操作表单提交和几个提交按钮。代码如下:
<form id="cf" action="" method="POST" target="">
<button id="preview">Preview</button>
<button name="submit" id="submit">Save</button>
</form>
<script>
$("#preview").on("click",function(e) {
$(this).attr('name','submit');
e.preventDefault();
$("#cf").attr({
'action':'/preview/',
'target':'_blank'
}).submit();
});
</script>
更改属性值似乎在&#34;预览&#34;单击按钮,但它没有提交。代码有什么问题?
答案 0 :(得分:3)
每个表单都附有一个提交功能,它被引用为form.submit
。
当您在表单submit
中命名时,它也会附加到表单上,并覆盖原生form.submit
,因此无法再使用提交函数提交表单。
将按钮重命名为submit
以外的任何内容,然后删除将名称设置为submit
<form id="cf" action="" method="POST" target="">
<button id="preview">Preview</button>
<button name="my_submit" id="my_submit">Save</button>
</form>
<script>
$("#preview").on("click",function(e) {
e.preventDefault();
$("#cf").attr({
'action':'/preview/',
'target':'_blank'
}).submit();
});
</script>