我正在尝试代表其他下拉菜单的值填充下拉菜单。这里的问题是我试图在select标签的onChange事件中调用的函数没有被编译。并在console.enter代码中出现错误。 HTML:
<select name="street_id" id="street_id" onchange="get_data(this)" class="input-xlarge">
</select>
Jquery的:
<script type="text/javascript">
function get_data()
{
$('#client_list').empty()
var dropDown = document.getElementById("street_id");
var street_id = dropDown.options[dropDown.selectedIndex].value;
$.ajax({
type: "GET",
url: "http://localhost:7777//index.php/admin/get_one_street_client/" + street_id,
data: { 'street_id': street_id },
success: function(data){
// Parse the returned json data
var opts = $.parseJSON(data);
// Use jQuery's each to iterate over the opts value
$.each(opts, function(i,d) {
console.log(d.client_name);
// You will need to alter the below to get the right values from your json object. Guessing that d.id / d.modelName are columns in your carModels data
<?print "var value == '$balance_data[0]->client_id'";
//$selected = 'selected';
?>
$('#client_list').append('<option value="' + d.client_id + ' ">' + d.client_name + '</option>');
});
}
});
}
</script>
错误:
insert_balance:180
未捕获的ReferenceError:未定义get_data @change @ insert_balance:180
我已经在顶部添加了jquery库地址。
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script>
答案 0 :(得分:1)
显然,你不应该把那个php放在AJAX响应的成功回调中。我无法想象这可以做些什么。只需删除这些行。
我不知道php生成了什么,但看起来它在函数get_data()中生成语法错误。
这意味着整个脚本(在脚本标记内)不会被编译。
此外,看起来这行代码并没有做任何事情,即使它没有引起问题
var value == 5;不知道为什么这个代码存在