2017-02-16 126 views
0

我有两个输入字段,值是通过数据库来。我希望一个用户更改一个输入字段的值,第二个用户会根据第一个值自动更改。我使用AJAX技术,到目前为止,我有以下代码:如何更改下拉选择选项的值其他

<!DOCTYPE HTML> 
<html> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"> 
<title>Untitled Document</title> 
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script> 
<script type="text/javascript"> 
    function ajaxfunction(parent) 
    { 
     $.ajax({ 
      type: 'GET', 
      url: 'process.php?parent=' + parent, 
      success: function(data) { 
       $("#sub").html(data); 
      } 
     }); 
    } 
</script> 
</head> 

<body> 
<select onchange="ajaxfunction(this.value)"> 
<?php 
$q= mysql_query("select * from tab1"); 
while ($row= mysql_fetch_array($q)){ 
$name= $row['name'];  
echo ' 

<option> '.$name.' </option> 
'; 
} 
?> 
</select> 
<select id="sub"></select> 

</select> 
</body> 
</html> 

和我process.php文件是:

<?php 

    $result = mysql_query("SELECT * FROM `contents` WHERE `parent` = " . mysql_real_escape_string($_GET["parent"])); 
    while(($data = mysql_fetch_array($result)) !== false) 
     echo '<option value="', $data['id'],'">', $data['name'],'</option>' 
?> 

哪里我做错了,我甚至没有得到(父母的价值)。任何人都请帮助我。

问候

+1

任何控制台错误?我希望你连接到process.php分贝 – madalinivascu

+0

提醒(数据);并进一步检查 –

+0

是数据库连接,控制台没有错误 –

回答

0

附加value属性选项标签,并尝试:

<select onchange="ajaxfunction(this.value)"> 
<?php 
$q= mysql_query("select * from tab1"); 
while ($row= mysql_fetch_array($q)){ 
$name= $row['name'];  
echo ' 

<option value="'.$name.'"> '.$name.' </option> 
'; 
} 
?> 
</select> 

process.php

<?php 

$result = mysql_query("SELECT * FROM `contents` WHERE `parent` = " . mysql_real_escape_string($_GET["parent"])); 
while(($data = mysql_fetch_array($result)) !== false){ 
    echo '<option value="', $data['id'],'">', $data['name'],'</option>'; 
} 
+0

我应该工作任何方式。如果在选项标签中未设置任何值,则将使用该文本。 –

+0

仍然没有工作 –

+0

我写在process.php($ e = $ _ GET ['parent']; echo $ e;)但它显示没有结果,这意味着价值没有得到那里 –

相关问题