我在我的网站上添加了一个脚本,生成了一个链式选择系统。它工作正常,但当我试图将数据提取到搜索脚本中时,我意识到它不会生成任何我可以使用的源代码。我附上了我认为对解决这个问题很重要的部分。降级前请告诉我。谢谢
<script type="text/javascript">
$(document).ready(function() {
$('#wait_1').hide();
$('#judet').change(function(){
$('#wait_1').show();
$('#result_1').hide();
$.get("func.php", {
func: "judet",
drop_var: $('#judet').val()
}, function(response){
$('#result_1').fadeOut();
setTimeout("finishAjax('result_1', '"+escape(response)+"')", 400);
});
return false;
});
});
function finishAjax(id, response) {
$('#wait_1').hide();
$('#'+id).html(unescape(response));
$('#'+id).fadeIn();
}
</script>
HTML部分:
<tr>
<td><label>Judet</label></td>
<td><select name="judet" id="judet">
<option value="" selected="selected" disabled="disabled">Selecteaza judetul</option>
<?php getTierOne(); ?>
</select></td>
<tr>
<td><label>Localitate</label></td>
<td>
<span id="wait_1" style="display: none;"><img alt="Asteptati..." src="images/ajax-loader.gif"/></span>
<span id="result_1" style="display: none;"></span>
</td>
</tr>
PHP部分:
function judet($drop_var)
{
include_once('mysql_connect.php');
$result = mysql_query("SELECT * FROM orase WHERE judet='$drop_var'")
or die(mysql_error());
echo '<select name="tier_two" id="tier_two">
<option value=" " disabled="disabled" selected="selected">Selecteaza localitatea</option>';
while($drop_2 = mysql_fetch_array( $result ))
{
echo '<option value="'.$drop_2['oras'].'">'.$drop_2['oras'].'</option>';
}
echo '</select>';
}
在我的案例中,问题相对简单,但这并没有阻止我花一整天的时间寻找解决方案。我今天学到了一些东西,现在我的剧本正在运行,所以最后一切都很好。我所要做的就是在html部分添加另一个隐藏的输入,如下所示:
<input type='hidden' name="locatie" value="<?php echo $_POST['tier_two']; ?>" >
然后,我可以获得它的值,并使用一个等于$_POST['tier_two']的变量在我想要的地方使用它;。如果您遇到这个问题,请注意Ajax不会像您预期的那样显示源代码,您将需要Firebug或类似的工具。然而,这一次我不用一个就解决了我的问题。祝你好运