我一直在尝试让脚本工作,但没有机会!
基本上,我希望在选择一个框时自动提交一个复选框表单,然后仅在我的网站上重新加载一个特定的 DIV (indexMain)。我想要实现的是在左侧有一个按颜色过滤的过滤器,因此当用户检查红色时,只会显示红色项目(通过重新加载项目DIV)。
这是我到目前为止的代码(不起作用,因为检查颜色框没有任何效果):
<script>
$(function() {
$(".regularCheckbox").change(function() {
console.log("changed...");
var data = $(this).serialize();
console.log(data);
$("#indexMain").load("index.php?data="+data)
})
})
</script>
<div class="bgFilterTitles">
<h1 class="filterTitles">COLOR</h1>
</div><div class="colors">
<form id ="colors" method="post" action="index.php">
<?php
$colors = mysql_query("SELECT DISTINCT color_base1 FROM item_descr ORDER BY color_base1");
while ($colorBoxes = mysql_fetch_array($colors))
{
echo "<input type='checkbox' id='checkbox-1-1' class='regularCheckbox' name='color' value='".$colorBoxes[color_base1]."' /><font class='similarItemsText'> ".$colorBoxes[color_base1]."</font><br />";
}
?>
最佳答案
看看Jquery submit a form via .submit() on AJAX success... how?
您“调用”的 .load() 函数实际上是一个事件处理程序,因此它不会执行与提交表单相关的任何操作。
如果您的 PHP 返回 HTML 片段,那么您可以使用 jquery(或标准 DOM)将 html 片段添加为目标 div 的innerHTML。
更新:我最初输入的速度太快,$(ele).load() 函数确实可以工作,因此请在 Firebug 或其他开发人员工具中检查您的请求和响应。
关于php - 选中复选框时仅重新加载一个 DIV,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11761706/