jQuery - ajax无法返回varchar

时间:2017-05-11 08:24:36

标签: php jquery ajax

我正在使用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'].')">
...

1 个答案:

答案 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'].'\')">