2012-09-25 21 views
0

我需要制作一个与主提交值不同的按钮目标。我使用jquery与下面的代码:jquery改变表单的目标值

HTML:

<form action="somepage" id="cartform" target="_parent" method="post"> 

(所以默认的操作是父)

JQUERY:

$("#refresh").click(function(){ 
    $("#cartform").attr('target', '_self'); 
}); 

( “刷新” 的形式的额外的按钮将窗体保留在弹出框中)

+6

那么,有什么问题吗?有什么问题? – j08691

+0

那么,这是行不通的?有没有错误? –

+0

感谢您的回复 - 它不起作用!我不明白为什么不,为什么一般jquery工作正常。 – user1684099

回答

1

尝试添加侦听器而不是点击:

​​

只有当您始终希望目标在提交表单时进行更改时,情况才是这样。否则,请尝试使用您的代码和preventDefault

$("#refresh").click(function(ev){ 
    ev.preventDefault(); 
    $("#cartform").attr('target', '_self').submit(); 
}); 

我认为在target更改适用之前提交表单。


编辑

其实,OP试图提交一个iframe里面的表单。这应该工作:

$("#refresh").click(function(ev){ 
    ev.preventDefault(); 
    $("#cartform").attr('target', 'name_of_the_iframe').submit(); 
}); 

将提交到:

<iframe name="name_of_the_iframe" ... 
+0

防止默认操作然后提交是什么意思? – VisioN

+0

强制浏览器在属性更改后提交。如果表单已被提交,则不需要更改目标,因为您不会再提交该表单。 – Giona

+0

无论如何,它将在处理程序运行后提交*。 – VisioN