【问题标题】:The variable is not shown in the console log [duplicate]该变量未显示在控制台日志中[重复]
【发布时间】:2017-11-29 09:01:49
【问题描述】:

谁能帮帮我?我是 jquery 和 ajax 的初学者。我在控制台日志中显示该值,但没有显示任何内容。可能是什么问题?

脚本.php

<script src="/icac/ar/js/jquery-1.12.4.js"></script>
<script>
$(document).ready(function(){
   $("#see").click(function() {

      val =  $(this).val();
       $.ajax({
    type: "POST",
    url: "test.php",
    data: 'var='+ val,
    success: function(data) {
        console.log(val);
       $("#c").html(data);
    }
        });      
          });      

});
</script>
<div class="test">
    <p>aaaaaaaaaaaaaaaaaaaaa</p>
    <a href="javascript:void(0);" id="see" value="1">see</a>
</div>
<div class="test">
    <p>bbbbbbbbbbbbbbbbbbbbb</p>
    <a href="javascript:void(0);" id="see"  value="2">see</a>
</div>
<div class="test">
    <p>cccccccccccccccccccccc</p>
    <a href="javascript:void(0);" id="see"  value="3">see</a>
</div>
<div class="test">
    <p>ddddddddddddddddddd</p>
    <a href="javascript:void(0);" id="see"  value="4">see</a>
</div>
<div id="c"></div>

test.php

<span class="ss"><?php
    if (isset($_POST["var"])){
     echo $_POST["var"]; }?>

</span>

【问题讨论】:

  • 我猜你的 AJAX 调用不会进入你的成功。尝试添加错误函数。
  • 首先清理你的代码,id 必须是唯一的!
  • 如何添加错误功能?你是什​​么意思独特
  • Ids 必须是唯一的,因为它们用于标识某物 - 如果它与其他事物相同,您如何识别它。考虑到这一点,jQuery 只会获取它找到的第一个带有 id 的项目,这意味着您的点击事件只会绑定到第一个 id 为 see 的锚点,而不是其他锚点。如果您需要绑定到多个元素,请使用类。此外,值不是锚的有效属性,请改用data attribute
  • @NasrallaMohammad -unique 表示您不能在同一页面中多次使用相同的 ID。

标签: php jquery ajax


【解决方案1】:

1- id 必须是唯一的,不能在 href 中使用 value 属性。

    <script src="http://code.jquery.com/jquery-latest.js"></script>
<script>
    $(document).ready(function () {
        $("#see").click(function (event) {
             event.preventDefault();
            var val = $(this).text();
            console.log(val);
                   $.ajax({
    type: "POST",
    url: "test.php",
    data: 'var='+ val,
    success: function(data) {
        console.log(val);
       $("#c").html(data);
    }
        }); 

        });

    });
</script>
<div class="test">
    <p>aaaaaaaaaaaaaaaaaaaaa</p>
    <a href="javascript:void(0);" id="see">see</a>
</div>

【讨论】:

    【解决方案2】:

    您不应该将相同的 id 分配给不同的 html 元素。尝试为每个元素设置一个唯一的 id 并将其作为目标或将 id="see" 更改为 class="see"(如果您更改为一个类,请确保将您的选择器更改为 '.see')

    【讨论】:

      【解决方案3】:

      HTML元素锚&lt;a&gt;你不能使用value属性, 取而代之的是,您可以使用 data-value 属性,另一方面也可以使用唯一 ID

       var val =  $(this).attr('data-value');
       console.log(val)
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2021-11-02
        • 2022-01-16
        • 1970-01-01
        • 1970-01-01
        • 2016-07-19
        • 1970-01-01
        • 2023-03-20
        相关资源
        最近更新 更多