当前位置: 首页 > 知识库问答 >
问题:

为什么我的ajax函数不能工作,它抛出数据对象未定义的异常?

耿和韵
2023-03-14

我试图在代码中调用ajax查询,但它不起作用。我有公共页眉和页脚(php)为所有其他文件。它返回所需的数据,但显示在html代码中。我到处找了找,但都找不到。我真的很抱歉没有在这里发布代码,因为我尝试了一个小时发布代码,但我不能,因为这个编辑器给出了一个关于未格式化代码的错误。

代码的Html部分

<div class="form-group">
    <select class="selectpicker" data-live-search="true" data-style="form-control"
           name="" id="sale_customer" required>
                                 
    </select>
</div>

<div class="row cus-note">
    <p class="note-field col-6" id="note_customer" name="search"> </p>
    <textarea type="text" class="form-control note-field col-6" name="" value=""
              placeholder="New Note..." required></textarea>
</div>

JQuery部分

<script type="text/javascript" src="../js/jquery.js"></script>

<script type="text/javascript">
$(document).ready(function() {

    function loadCustomer(notes, cust) {
    // console.log("cust");
        $.ajax({
           url: "<?php echo $folder;?>crud.php",
           type: "POST",
           data: {
               note: notes,
               customer: cust
           },
           success: function(data) {
               if (data.note == "notes") {
       // alert('haaalp');
                   $("#note_customer").html(data);
               } else {
                      $("#sale_customer").append(data);
       alert('haaalp');
               }

           }
       });
   }

   loadCustomer("noteD","");

   $("#sale_customer").on("change", function() {
    var customer = $("#sale_customer").val();
    console.log(customer);

    if (customer != "") {
        loadCustomer("notes", customer);
    }
    else {
        $("#note_customer").html("");
    }
});


});
</script>

服务器端代码

if($_POST['note'] == "noteD"){
   $sql = "SELECT * FROM customer";

   $query = mysqli_query($db, $sql) or die("Query Unsuccessful.");

   $sale_customer = "<option selected value='wic'><sub>test</sub></option>";
   while($row = mysqli_fetch_assoc($query)){
     $sale_customer .= "<option value='{$row['name']}'>{$row['name']}</option>";
   }
   echo $sale_customer;    
}
else if($_POST['note'] == "notes"){

    $customer = $_POST['customer'];
    $query = mysqli_query($db, "SELECT * FROM customer WHERE name = 'Ali'") or die("Query 
    Unsuccessful.");

    $sale_customer = "";
    while($row = mysqli_fetch_assoc($query)){
    $sale_customer .= "{$row['note']}";
}
echo $sale_customer;
}

我可以在控制台中看到成功返回的数据。它也是龚的内部条件,但不显示在选择器。在if条件中,如果use only note代替Data.note会引发未定义note的异常。

成功返回的Ajax代码

控制台上返回的数据

数据.备注改为仅备注

找不到便笺对象

共有1个答案

范飞翰
2023-03-14

好啊!!!

在四处寻找之后,我找到了一个解决这个问题的方法。主要问题是引导程序SelectPicker。ajax返回了数据,但select没有显示它。在

success: function(data) {
            if (note == "notes") {
                $("#note_customer").html(data);
            } else {
                $("#sale_customer").append(data);
            }

        }

我刚刚添加$(“#sale_customer”).append(data).selectpicker('refresh');

它工作了,但另一个问题仍然存在,即在中没有定义if(note==“notes”){note”。为此,我在ajax外部将两个变量作为var note=notes;var customer=cust;发布在数据对象中,作为

data: {
            note,
            customer
        },

结果出现了意料之中的结果。

问题出在引导程序selectpicker和数据对象上。

 类似资料:
  • 我正在编写一个Spring Boot(批处理)应用程序,它应该用一个特定的退出代码退出。一个要求是在数据库无法连接时返回退出代码。 我的方法是通过显式创建bean、调用并捕获和抛出实现的自定义异常来尽早处理此异常。配置如下: 我希望尽可能多地重用Spring Boot自动配置,这就是为什么我使用。我不知道这是不是应该走的路。 对的调用返回配置的url(从我的属性文件中): 但为什么Spring B

  • 使用scandir()函数时,我收到以下php警告: Scandir无法打开目录:公共html/page2中不允许操作。php在线3 第2页。php 我想使用这个功能来打印我的根文件夹的文件和子目录,但它不工作。 有人知道怎么修吗?

  • 我在做一个非常简单的两个按钮状态。如果我点击abutton,A组件显示,如果点击bButk,那么B组件。我正在映射通过数组的项目,以便每个项目都有自己的按钮状态。假设我点击项目1的按钮B,那么我只想要第一个项目B显示。现在所有这些都会同时被触发。我已经在构造函数中限制了它们,但我仍然无法只获得一次点击触发并显示相关组件。

  • 问题内容: 如果将它们放在document.ready()函数中,则函数的定义为未定义: 为什么会这样?我确定我只需要一些简单的理解即可:) 问题答案: 不确定为什么在范围内定义函数对您很重要,但是您可以通过预先声明使其起作用: 显然,由于代码尚未运行,您之后不能立即从内联脚本中调用,但是您可以稍后再调用该函数。 只要确保在代码运行之前没有任何东西可以尝试调用(或进行无害函数的初始声明)。

  • 我正在尝试为Xamarin.Forms创建一个自定义的ButtonRenderer。下面是一个简单的测试,我一直在尝试根据一些教程组合起来,但我似乎可以使它工作。

  • 问题内容: 直接的答案是因为s接口被指定为不会引发异常。但是为什么呢? 或换句话说:我必须依赖可以引发异常的函数。从理论上讲,这不应该发生。但是,如果发生这种情况,我希望它脱离我正在使用的整个函数(在中)。即我希望它的行为就像发生未处理的异常一样。 似乎这不可能以一种显而易见的自然方式进行(因为如果接口说它不能抛出异常,就不会)。 我该如何解决?用丑陋的try / catch并打印出异常,并希望我