我一直试图让脚本工作,但没有机会!
基本上,我希望选中一个复选框时自动提交复选框表单,然后在我的网站上仅重新加载一个特定的DIV(indexMain)。我想要实现的是在左边有一个颜色过滤器,所以当用户检查RED时,只会显示RED项目(通过重新加载Items 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 />";
}
?>
答案 0 :(得分:0)
查看Jquery submit a form via .submit() on AJAX success... how?
.load()函数你的'调用'实际上是一个事件处理程序,因此它不会对提交表单做任何事情。
如果您的PHP返回并且HTML片段,那么您可以使用jquery(或标准DOM)将html片段添加为目标div的innerHTML。
更新:我的初始输入速度太快,$(ele).load()函数确实有效,因此请在Firebug或其他开发人员工具中检查您的请求和响应。