基本上我有一个有几个下拉列表的表单,但是我希望将页面设置为表单提交的操作将基于在一个表单中选择的选项的下降。我想坚持一个提交按钮,所以它似乎有点棘手。任何人都可以将我指向正确的方向吗?提交时更改表单动作的最佳方式
回答
你可以使用一些jQuery。
$("#yourDropDown").change(function() {
var text = $(this).children(':selected').text();
$("#yourForm").attr('action', text);
});
其中“yourDropDown”是你的下拉菜单的ID,而“yourForm”是表单的ID,并在下拉选项的文本是完全合格的URL张贴到。
编辑:另外,我同意昆汀对你的帖子的评论。
正是我在找什么。谢谢!! –
不要以为$('#yourForm')。attr('action')= ...会起作用。应该是$('#yourForm')。attr('action','actionGoesHere.php') – jbyrd
BY JOVE,你可能是对的。固定。 –
另一种方法是在窗体上添加onsubmit事件处理程序。如果你的形式看起来是这样的:
<form id="myForm" action="action1.php">
<select id="myDropdown">
<option value="1">Option 1</option>
<option value="2">Option 1</option>
</select>
<input type="submit" value="Submit" />
</form>
添加以下JavaScript(这里使用jQuery):
$(document).ready(function() {
$('#myForm').submit(function() {
var dropdownVal = $("#myDropdown").val();
switch(dropdownVal) {
case 1:
$(this).attr('action', 'action1.php');
// do other stuff if you want
break;
case 2:
$(this).attr('action', 'action2.php');
// do other stuff if you want
break;
}
}
});
- 1. 在JavaScript中不使用表单动作来提交表单的最佳方式
- 2. 更改表单提交动作,然后提交表单
- 3. 最佳方式提交一个表单,并保持工作
- 4. 检查表单是否已提交的最佳方式(php)
- 5. 在表单中有多个“提交”按钮的最佳方式?
- 6. 什么是确定提交表单的最佳方式?
- 7. 提交从更新面板编程方式更改表单动作
- 8. 更改提交表单的操作
- 9. 表单操作的最佳方式?
- 10. 使用JavaScript按下提交按钮时更改表单动作
- 11. 动态更改窗体操作时提交表单
- 12. 用AJAX在Rails中提交动态表单的最佳方式是什么?
- 13. 表单提交的最佳做法
- 14. 每次完成一个部分时提交表单的最佳方式
- 15. 动态提交javascript更改表单
- 16. 提交表单时更改CSS规则?
- 17. 更改表单提交值?
- 18. 表单提交和PHP最佳实践
- 19. 这是在Ajax表单提交以更新表格后更新表格数据的最佳方式
- 20. 表单提交按钮 - 每次提交更改操作页面
- 21. 跟踪myql更改的最佳方式
- 22. 传播VisualState更改的最佳方式
- 23. 在jQuery中提交禁用表单域的最佳方法?
- 24. 按需加载标签和表单提交的最佳方法
- 25. 表单在动态更改类时提交错误的函数
- 26. 更改表单提交按钮的值以在表单提交后提交
- 27. wordpress表单动作提交
- 28. 最佳方式交互
- 29. 使用PHP停止多个表单提交的最佳方式是什么?
- 30. 在ASP.NET中实现提交表单的最佳方式是什么?
不要。有一个可以处理所有事情的单一动作(即使它是通过if($ _POST ['foo'] ==='bar'){include('bar.php');}')来完成的)。否则你会对JS产生不必要的依赖。 – Quentin
感谢您的提示。但是,该项目仅限于内部使用JS的用户。 –
刚刚意识到这可能是重复的[1925614](http://stackoverflow.com/questions/1925614/jquery-change-form-action-based-on-selection) – jbyrd