简体   繁体   English

使用AJAX,PHP和MYSQL在另一个复选框中显示html表单复选框中的多个值

[英]display multiple values from html form checkbox in another checkbox using AJAX, PHP and MYSQL

I have to select sub-category according to the category checked. 我必须根据检查的类别选择子类别。 i am stuck with selecting multiple checkboxes and displaying its value using ajax. 我坚持选择多个复选框并使用ajax显示其值。 i want to use pure ajax and not jquery. 我想使用纯Ajax,而不是jquery。 i am fetching values of 1 checkbox from database table and now i need to display other checkbox with the values fetched with select query depending upon the multiple checkboxes user checks. 我正在从数据库表中获取1复选框的值,现在我需要显示其他复选框,并使用选择查询来取值,具体取决于用户选中的多个复选框。 i have an idea foreach loop is to be used but cant understand how and where to frame it..Please Help. 我有一个想法,将使用foreach循环,但无法理解如何以及在何处构建它。 Thank u. 感谢你。 this is the form: 形式如下:

<?php
while($f1=mysql_fetch_row($res))  {
?>
<input type="checkbox" name="chkcat[]" id="chkcat" onChange="showUser(this.value)" value='<?php echo $f1[1]; ?>'>  <?php echo $f1[0]; ?>
<? } ?>
<div> id="txtHint"> </div>

Ajax code that has showUser function 具有showUser功能的Ajax代码

<script>
 function showUser(str) {
 if (str=="") {
document.getElementById("txtHint").innerHTML="";
return;
} 

if (window.XMLHttpRequest) {
// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=new XMLHttpRequest();
} else { // code for IE6, IE5
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange=function() {
if (xmlhttp.readyState==4 && xmlhttp.status==200) {
 document.getElementById("txtHint").innerHTML=xmlhttp.responseText;
}
}
xmlhttp.open("GET","ajax_chkbox.php?q="+str,true);
xmlhttp.send();
}
</script>

and the file that has to fetch sub category according to the category selected and url ie:ajax_chkbox.php is: 根据选择的类别和URL(即:ajax_chkbox.php)必须获取子类别的文件为:

while($row = mysql_fetch_array($result)) 
{
echo "<input type=checkbox name=chksubcat[] id=chsubkcat value= $row[0]>  $row[2]"; 
echo "<br>";
}

You can change Dropdown to checkbox 您可以将下拉菜单更改为复选框

select_cat.php select_cat.php

<script type="text/javascript" src="http://ajax.googleapis.com/
ajax/libs/jquery/1.4.2/jquery.min.js"></script>
<script type="text/javascript">
$(document).ready(function()
{
$(".category").change(function()
{
var id=$(this).val();
var dataString = 'id='+ id;

$.ajax
({
type: "POST",
url: "select_subcat.php",
data: dataString,
cache: false,
success: function(html)
{
$(".subcat").html(html);
}
});

});

});
</script>

Category : 分类:

<select name="category" class="category">
<option selected="selected">--Select Category--</option>
<?php
include('databasefile');
mysql_connect($server,$username,$password)or die(mysql_error());
mysql_select_db($database)or die(mysql_error());
$sql=mysql_query("select cat_name from category order by cat_name");
while($row=mysql_fetch_array($sql))
{
$cname=$row['cat_name'];
echo '<option value="'.$cname.'">'.$cname.'</option>';
} ?>
</select> <br/><br/>

SubCategory :
<select name="subcat" class="subcat">
<option selected="selected">--Select SubCat--</option>
</select>

2.select_subcat.php 2.select_subcat.php

<?php
include('databasefile);
mysql_connect($server,$username,$password)or die(mysql_error());
mysql_select_db($database)or die(mysql_error());
if($_POST['id'])
{
$id=$_POST['id'];
$sql=mysql_query("select s_name from subcat_l1 where cat_name='$id'");
while($row=mysql_fetch_array($sql))
{
$sname=$row['s_name'];
echo '<option value="'.$sname.'">'.$sname.'</option>';
}
}
?>
SubCategory :
<select name="subcat" class="subcat">
<option selected="selected">--Select SubCat--</option>
</select>

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM