我正在使用Codeigniter,想知道如何创建一个点击时提交表单的复选框?其次,这个复选框将是几个复选框中的一个,这些复选框将用作产品> $ 20,产品< $ 30的过滤器,我如何在url中传递它?我在想/ 1 + 2 + 3点击提交表单的复选框
1
A
回答
3
未与笨的工作很多,但我可以回答如何使表格上检查与JS的复选框提交:
<form id="something">
<input type="checkbox" name="foo" id="foo" value="yes" />
</form>
<script type="text/javascript">
$("#foo").click(function() {
if ($(this).is(":checked"))
$("#something").submit();
});
</script>
1
这与PHP和CodeIgniter无关。解决方案是在元素的onclick事件中提交表单。
<input type="checkbox" name="filterx" onclick="document.forms[0].submit()" />
如果您愿意,可以使用表单的OnSubmit事件来很好地格式化网址。
要做到这一点,你可以
- 获得所有所需元素的值,
- 修建从它一个很好的网址,
- 设置使用
location.href = yourniceurl
网址, - 取消定期提交通过返回false。
请注意,两种解决方案都需要启用javascript。所以有其他方式提交表单(提交按钮)是一件好事。不要依靠按Enter键进行提交。 Opera将使用Enter键切换复选框而不是提交表单。 如果你喜欢,你可以使用Javascript隐藏提交按钮,这样,具有Javascript的用户将自动提交表单,而没有用户可以使用该按钮。 你将需要确保你的服务器端表单验证器不仅接受漂亮的url,而且丑陋的url(它的值也是?filterx=on
)也是如此。
1
JavaScript的问题似乎已经已经解决了;让我们来看看codeigniter的。
您可以通过以下两种方式之一传递网址。
习语但不限:如/ 1/2/3/4 /等。处理该url的控制器函数都可以使用
func_get_args
来读取它们,或者如果您已经知道最多可以传递多少个参数,则将默认值null赋予所有非必要的参数;不Codeigniterish但对于搜索参数严重更好:使你的配置文件中的查询字符串传递参数,你用GET(
min=2&max=3
等)通常会与CI的输入级得到他们的价值($min = $this->input->get('min')
) 。
相关问题
- 1. 无法在复选框上提交表单点击jQuery + Rails
- 2. jquery通过单击复选框提交表单不起作用
- 3. PHP - 表单复选框提交与AJAX
- 4. 表单提交后检查复选框
- 5. jquery提交表单与复选框
- 6. 仅通过点击复选框提交表格
- 7. 提交给Spring控制器的JSP表单提交复选框
- 8. 保留复选框的值,直到点击提交
- 9. 如何在HTML表单的复选框提交表单前
- 10. 提交表单后保持单选按钮和复选框(webMathematica)
- 11. jQuery提交表单的链接点击
- 12. jquery验证 - 点击“提交”检查复选框
- 13. 需要勾选复选框的PHP表单提交
- 14. 提交表单上的复选框选择
- 15. SQL表单中复选框的简单问题提交
- 16. 单击复选框点击选择Jquery mobile中的所有复选框
- 17. AJAX表单提交 - 每次点击提交表格i ++次数
- 18. 点击通过Selenium/Webdriver复选框列表中的复选框
- 19. 单个复选框检查列表中的所有复选框点击
- 20. 点击提交表单后重定向
- 21. django表单不能在点击提交
- 22. 表单 - 点击提交后重定向
- 23. 上点击按钮时提交表单
- 24. 点击复选框按钮,将显示文本框并提交按钮,点击提交按钮应该禁用复选框按钮
- 25. 禁用表单提交直到(两个)复选框被选中
- 26. 当复选框被选中时提交表单 - 教程
- 27. jquery停止表单提交,除非选中复选框
- 28. 如果表单被提交,那么复选框被选中
- 29. jQuery:当选中复选框时提交表单
- 30. PHP仅当勾选复选框时才提交表单
这真是一个客户端(问题JavaScript)的问题.. – Neal 2011-05-16 19:21:45