javascript - jQuery - ajax 返回未知数字

标签 javascript php jquery mysql ajax

当我尝试搜索某些 id 时,我遇到了 ajax 结果问题,例如:0205P、04066H 等,它正确地给出了结果,但是当我单击它时,输入中是其他一些数字,例如 616、7,13...所以一切都很完美,除了当我的搜索从 0(零)开始时。 我在数据库(MYSQL)中的ID是Varchar(8)。 这是我的代码:

dob.php

<input type="text" name="konto1" id="konto" class="form-control konto" value="<?php if(isset($_POST['konto1'])) echo $_POST['konto1']; ?><?php if(isset($_GET['konto1'])) echo $_GET['konto1'];?>" />  
                          <div class="boja"><div style="margin-top: 0px" id="selectKonto" class="list-group"></div></div>

<script>
                    // ajax call
                    $('#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) {
                                   // var reply = data.replace(/\s+/, ""); 
                                    $('#selectKonto').show();
                                    $('#selectKonto').html(data);

                                    $("#konto").css("background", "#FFF");

                                }
                            }
                        });
                    });
                    function selectKonto(val) {
                $("#konto1").text(val);
                $("#selectKonto").hide();

            } 
</script>

konto.php

if(!empty($konto)) {
    $q = "SELECT * FROM konto WHERE ... LIMIT 10";
    $result = $db->query($q);

    if(!$result){
        die('QUERY FAILED' . $db->error);
    }
    if($result->num_rows > 0){
        while($row = $result->fetch_assoc()){

        echo '<div><font size="2em"><a href="#" class="list-group-item konto" style="width: 555px;border: 1px solid grey;"
                onclick="selectKonto(\''.trim($row['kp_sif']).'\')">...
 <script>
    $('.konto').click(function() {     
    var text = $(this).html();
    $('.ime-konto').html(text);
    $("#selectKonto").hide();
    });
</script>

附注数据库中的字段类型必须保持varchar,我无法将其更改为INT。

最佳答案

因此,它可以在 php 中使用引号正常工作。

onclick="selectKonto(\''.trim($row['kp_sif']).'\')">

显然我在语法上还有其他问题。

关于javascript - jQuery - ajax 返回未知数字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44047365/

相关文章:

javascript - 防止 PHP 在新页面中显示结果

javascript - 从 JQuery.get 调用常规 javascript 函数作为回调时出现 ReferenceError

jquery文档方向

javascript - Touch Punch JQuery UI 提供什么?

javascript - 使用 "this"关键字对整个选择进行 jquery 点击事件

javascript - 在声明公共(public)方法之前如何访问它?

javascript - 似乎无法运行此 AJAX 代码

php - 处理要插入 UTF-8 数据库的 CSV 数据编码

javascript - 定位所有类元素以从同一点对齐

php - MySQL 选择常量位于表数组中的位置