我有一个选择框,在更改时显示另一个带有ajax的选择框,但问题是我的PHP表单不带第二个选择框的任何值。 有一些我的代码。
所以这是我的ajax功能:
$(document).ready(function(){
$("select[name=link]").change(function(){
$.ajax({
type:"post",
url:"fns/site.php",
data:$("#formm").serialize(),
success:function(data){
$("#link").html(data);
}
});
});
});
我应该获得所有价值的表格:
<table>
<form method="get" id="formm">
<tr>
<td>
<select name="link">
<option value="0" selected disabled>Select</option>
<option value="0" disabled>Site</option>
<option class="sub" value="1">Link 1</option>
<option class="sub" value="2">Link 2</option>
<option value="3">Link 3</option>
</select>
</td>
</tr>
<tr id="link">
</tr>
</form>
</table>
和site.php文件:
$site=mysql_query("SELECT * FROM `site`");
echo '<td><select name="site">';
echo '<option value="0">Select</option>';
while($site1 = mysql_fetch_assoc($site)){
echo '
<option value="'.$site1['id'].'">'.$site1['title'].'</option>
';
}
echo '</select></td>';
所以我毕竟没有“网站”的值选择框...
答案 0 :(得分:0)
如果你的site.php文件没有在sql条件中使用link的值,你为什么使用ajax函数?
你可以使用一个简单的css显示,如下所示:
<table>
<form method="get" id="formm">
<tr>
<td>
<select name="link">
<option value="0" selected disabled>Select</option>
<option value="0" disabled>Site</option>
<option class="sub" value="1">Link 1</option>
<option class="sub" value="2">Link 2</option>
<option value="3">Link 3</option>
</select>
</td>
</tr>
<tr id="link">
<td>
<select name="site" id="site" style="display:none;">
<option value="0">Select</option>
<option value="1">Option 1</option>
<option value="2">Option 2</option>
</select>
</td>
</tr>
</form>
</table>
&#13;
在ajax函数中:
$(document).ready(function(){
$("select[name=link]").change(function(){
$("#site").css("display", "");
});
});
&#13;
答案 1 :(得分:0)
好的,所以有人建议我摆脱桌面并使用<label>
来格式化表单。
这就是全部:))
表格应如下所示:
<form method="get" id="formm">
<label></label>
<select name="link">
<option value="0" selected disabled>Select</option>
<option value="0" disabled>Site</option>
<option class="sub" value="1">Link 1</option>
<option class="sub" value="2">Link 2</option>
<option value="3">Link 3</option>
</select>
<div id="link">
</div>
</form>