$catlist 这是一个使用 AJAX 的 jQuery POST:
$(document).ready(function() {
$('#taglist').change(function(){
$.post('../includes/ajax.php', { taglist: $(this).find("option:selected").attr('value')}, function(data) {
$("#catid").html(response.catlist);
});
});
});
这就是 ajax.php 中发生的情况:
if(isset($_POST['taglist'])){
$catlist = '<select name="cat_id[]" size="5" multiple id="cat_id[]" class="darkgrey w200px">';
$catlist .= '<option value="123">123</option>';
$catlist .= '<option value="456">456</option>';
$catlist .= '</select>';
echo json_encode(array("status"=>"success", "catlist" => $catlist));
}
在我的真实页面中,我将使用取决于 POST 的值填充 cat_id 选择。出于测试目的,我只是返回一个带有 2 个选项的静态选择。
出于某种我无法理解的原因,我似乎无法让响应出现在#catid 中,尽管发布和响应执行得很好(我正在使用 Firebug Net 面板来监控发布和响应)。请把你的灯给我。