Answers:
请查看此答案:https : //stackoverflow.com/a/3863869/2096619
引用Tamlyn:
如果您有任何名为“ action”的表单元素,则jQuery(1.4.2)会感到困惑。您可以通过使用DOM属性方法解决此问题,或者简单地避免使用名为“ action”的表单元素。
<form action="foo"> <button name="action" value="bar">Go</button> </form> <script type="text/javascript"> $('form').attr('action', 'baz'); //this fails silently $('form').get(0).setAttribute('action', 'baz'); //this works </script>
要动态更改表单的动作值,可以尝试以下代码:
下面的代码是,如果您要打开一个对话框框,并且在该对话框框内有表单,并且您想更改其动作。我使用了Bootstrap对话框框,并在打开该对话框框时将动作值分配给表单。
$('#your-dailog-id').on('show.bs.modal', function (event) {
var link = $(event.relatedTarget);// Link that triggered the modal
var cURL= link.data('url');// Extract info from data-* attributes
$("#delUserform").attr("action", cURL);
});
如果您要更改常规页面上的表单操作,请使用以下代码
$("#yourElementId").change(function() {
var action = <generate_action>;
$("#formId").attr("action", action);
});