在这里,我尝试了尽可能多但无法获得结果。请任何人帮助我。 我无法使用这些代码得到正确的结果。可能是我缺少的东西。
$get_medical_aod_name = $_POST['name'];
$select_query = mysql_query("SELECT id, name FROM insurance_companies WHERE cat=$get_medical_aod_name");
while ($row = mysql_fetch_array($select_query)) {
$result[] = array(
'id' => $row['id'],
'name' => $row['name']
);
}
header('Content-Type: application/json', true);
echo json_encode($result);
和我的script.js
$('#medical_aid_name').change(function(){
//alert("working");
var name = $(this).val();
$.post('ins_bene.php',
{'name' : name },
function(data){
var select = $('#benefit').empty();
$.each(data.values, function(i,data) {
select.append( '<option value="'
+ data.id
+ '">'
+ data.name
+ '</option>' );
});
}, "json");
});
我觉得一切都很好,但我没有输出:(
答案 0 :(得分:1)
您需要引用查询:
$select_query = mysql_query("SELECT id, name FROM insurance_companies WHERE cat=$get_medical_aod_name");
到
$select_query = mysql_query('SELECT id, name FROM insurance_companies WHERE cat="' . mysql_real_escape_string($get_medical_aod_name) .'"');
请不要使用mysql_函数。转到PDO!
答案 1 :(得分:1)
试试这个...... 更新
$('#medical_aid_name').change(function() {
var name = $(this).val();
$.post('ins_bene.php', { 'name': name },
function(data) {
alert(data) // [object][object],[object][object]
$('#benefit').empty();
$.each(data, function(key, value) {
$('#benefit').append('<option value="' + value.id + '">' + value.name + '</option>');
});
}, "json");
});
答案 2 :(得分:0)
而不是以下代码:
var select = $('#benefit').empty();
$.each(data.values, function(i,data) {
select.append( '<option value="'
+ data.id
+ '">'
+ data.name
+ '</option>' );
});
使用以下代码:
var select = $('#benefit').empty();
$.each(data.values, function(i,data) {
$('#benefit').append( '<option value="'
+ data[i].id
+ '">'
+ data[i].name
+ '</option>' );
});
这里select var没有select标签的对象,这就是原因。
答案 3 :(得分:0)
在script.js中更改此内容
$.each(data.values, function(key, value)
到
$.each(data, function(key, value) {
OR
将密钥values
分配给$result
while ($row = mysql_fetch_array($select_query)) {
$result['values'] = array(
'id' => $row['id'],
'name' => $row['name']
);
}
答案 4 :(得分:0)
这应该有效
while ($row = mysql_fetch_array($select_query)) {
$result['values'] = array(
'id' => $row['id'],
'name' => $row['name']
);
}