Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/430.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 表单在通过jQuery更改操作后提交到旧操作_Php_Javascript_Jquery_Submit_Form Submit - Fatal编程技术网

Php 表单在通过jQuery更改操作后提交到旧操作

Php 表单在通过jQuery更改操作后提交到旧操作,php,javascript,jquery,submit,form-submit,Php,Javascript,Jquery,Submit,Form Submit,这看起来应该很简单,但它不起作用。我正在做的是获取旧操作,在末尾添加一个ID,并将表单操作设置为该ID。代码如下: var action = $('#update-schedule-form').attr('action'); $('#update-schedule-form').attr('action', action + '/1'); 我可以在FireBug和Chrome的inspector中看到表单的动作发生了变化。但是,当我单击submit按钮时,它仍然会将其发送到原始操作。例如,它

这看起来应该很简单,但它不起作用。我正在做的是获取旧操作,在末尾添加一个ID,并将表单操作设置为该ID。代码如下:

var action = $('#update-schedule-form').attr('action');
$('#update-schedule-form').attr('action', action + '/1');
我可以在FireBug和Chrome的inspector中看到表单的动作发生了变化。但是,当我单击submit按钮时,它仍然会将其发送到原始操作。例如,它在代码中显示“/controller/action/1”,但提交给“/controller/action”。你知道这是怎么回事吗

更新


事实证明,我使用的框架Yii存储了ajax验证例程的原始表单操作地址。我没有在Firebug中看到表单提交,我看到的是在提交之前尝试验证表单的验证。我不知道Yii在哪里存储它使用的URL,也不知道如何更改它(应该使用form操作,但显然不是),所以我只是修改了我的控制器,并将ID参数设置为可选。现在验证运行良好,表单提交正确。

也许您应该尝试使用
prop
而不是
attr

var action = $('#update-schedule-form').prop('action');
$('#update-schedule-form').prop('action', action + '/1');

检查此答案是否有误。也许您应该尝试使用
prop
而不是
attr

var action = $('#update-schedule-form').prop('action');
$('#update-schedule-form').prop('action', action + '/1');

检查此答案,了解您是通过jQuery还是使用submit html按钮提交表单?尝试另一种提交方式

另外,尝试以这种方式更新操作

var action = jQuery('#update-schedule-form').get(0).getAttribute("action");
jQuery('#update-schedule-form').get(0).setAttribute('action', action + '/1');  

编辑:它可能是您的代码所在的位置,但如果没有错误,很难说,这可能不是问题所在。

您是通过jQuery还是使用submit html按钮提交表单?尝试另一种提交方式

另外,尝试以这种方式更新操作

var action = jQuery('#update-schedule-form').get(0).getAttribute("action");
jQuery('#update-schedule-form').get(0).setAttribute('action', action + '/1');  

编辑:它可能是您的代码所在的位置,但如果没有错误,很难判断,这可能不是问题所在。

您的线路何时运行?提交?其他活动?你的队伍什么时候开始?提交?还有别的事吗?