我正在使用ajax从mysql数据库搜索结果。当字段类型为varchar(50)时,ajax onclick(选择结果)返回未知数字。在字段整数(8),它工作正常。有什么不同? 我的代码:
的index.php
$('#konto').keyup(function() {
var konto = $(this).val();
$.ajax({
type: 'POST',
url: 'konto.php',
data: {
search: konto
},
beforeSend: function() {
$('#konto').css("background", "#FFF url(LoaderIcon.gif) no-repeat 165px");
},
success: function(data) {
if (!data.error) {
$('#selectKonto').show();
$('#selectKonto').html(data);
$("#konto").css("background", "#FFF");
}
}
});
});
function selectKonto(val) {
$("#konto").val(val);
$("#selectKonto").hide();
}
konto.php
if(!empty($konto)) {
$q = "SELECT * FROM konto WHERE kp_sif LIKE '$konto%' OR kp_ko LIKE '%$konto%' OR UPPER(kp_n1) LIKE '%$konto%' OR UPPER(kp_n2) LIKE '%$konto%' LIMIT 200";
$result = $db->query($q);
if(!$result){
die('QUERY FAILED' . $db->error);
}
if($result->num_rows > 0){
while($row = $result->fetch_assoc()){
echo '<font size="2em"><a href="#" class="list-group-item konto" style="width: 255px;border: 1px solid grey;"
onClick="selectKonto('.$row['kp_sif'].')">
...
答案 0 :(得分:2)
如果值为字符串,则需要在selectKonto()
的参数周围引用。
echo '<font size="2em"><a href="#" class="list-group-item konto" style="width: 255px;border: 1px solid grey;"
onClick="selectKonto(\''.$row['kp_sif'].'\')">