Onchange下拉值查询resp。表 - 带有 php 、 mysql 、 ajax 、 jquery
Posted
技术标签:
【中文标题】Onchange下拉值查询resp。表 - 带有 php 、 mysql 、 ajax 、 jquery【英文标题】:Onchange dropdown values query resp. tables - with php , mysql , ajax , jquery 【发布时间】:2014-01-31 21:04:13 【问题描述】:主下拉菜单:
<select name="sometest">
<option value="1"> A </option>
<option value="2"> B </option>
<option value="3"> C </option>
<option value="4"> D </option>
<option value="5"> E </option>
</select>
现在在这里,当值 1、2、3、4 处于更改状态时,它应该从 table_1 获取其详细信息,而当值 5 处于更改状态时,其详细信息来自另一个 table_2 的字段(名称、大小、标题)。
请注意 table_1 和 table_2 具有相同的列字段名称。
现在在相应的 onchange 之后。值我得到另一个下拉列表,分别是。表查询。
假设当我对 1 或 2 或 3 或 4 值进行更改时,它会使用字段名称、大小、标题查询 table_1 并将其列在相应的下拉部分下。
下拉列表:table_1 中 1、2、3、4 的变化值
这里:列“名称”所有值都列在名称下,列“大小”所有值列在大小下,列“标题”所有值列在标题下来自table_1
<select name="name">
<option value="n1"> Apple </option>
<option value="n2"> Boy </option>
<option value="n3"> Cat </option>
</select>
<select name="size">
<option value="12"> 0-1 </option>
<option value="21"> 1-1 </option>
</select>
<select name="title">
<option value="1"> whatever </option>
<option value="2"> same whatever </option>
</select>
类似地,当从 Main Drop-down 中选择 Value 5 时,它会从 table_2 中查询所有列字段并将其列在相应的下方。下拉
【问题讨论】:
你使用 ajax 来获取结果? 我是新手,所以不知道..因此寻求帮助:( 你尝试过任何代码吗? @ Mahmood,正如我所说我是 jquery 和 ajax 的新手 .. 但是是的,我尝试研究 jquery 和 ajax,经过一些研究,我知道了循环中使用 ajax 的 jquery 的 Onchange可能对我有帮助..但从哪里开始感到困惑,因为从主下拉列表中我必须根据其值查询 2 个表 【参考方案1】:user ajax onchange 选择框传select的值
<select name="sometest" onchange="javascript:call_ajax_fun(this.value);">
<option value="1"> A </option>
<option value="2"> B </option>
<option value="3"> C </option>
<option value="4"> D </option>
<option value="5"> E </option>
</select>
JS Ajax 函数
function call_ajax_fun(str)
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)
var result = xmlhttp.responseText;
if(xmlhttp.responseText!='')
document.getElementById('your_result_div_id').innerHTML =result ;
// put your result in your div
var url="get_result.php?pas_val="str;
xmlhttp.open("GET",url,true);
xmlhttp.send();
你得到的结果文件如下
get_result.php
<?php
if(isset($_REQUEST['pas_val']))
$pas_val = $_REQUEST['pas_val'];
if($pas_val<5)
$tbl = "table_1";
else
$tbl = "table_2";
// your table is in $tbl variable
// your your table here in your code
else
exit;
?>
【讨论】:
@Satish 感谢您的回复,但是列出我的其他下拉列表值呢?按列字段的表格 @user2906577 在 get_result.php 上的 if-else 中使用 $pas_val 并在我编辑答案时定义您的表格。以上是关于Onchange下拉值查询resp。表 - 带有 php 、 mysql 、 ajax 、 jquery的主要内容,如果未能解决你的问题,请参考以下文章