首页 > 解决方案 > 通过类上传按钮的两个按钮中的一个按钮的jquery和ajax检索数据id的值

问题描述

我能够在第二个脚本中获取数据 id 的值,但是,代码无法检索第一个脚本中的值。

$(function() {
  $(document).on('click', '.upload', function(e) {
    e.preventDefault();
    $('#uploaddocument').modal('show');
    var value = $(this).data('id');

    $.ajax({
      type: 'POST',
      url: 'users_upload.php',
      data: {
        id: value
      },
      dataType: 'json',
      success: function(response) {
        $('.userid').val(response.value);
      }
    });
  });



});

上面的脚本不工作,而下面的脚本工作

$(function() {
  $(document).on('click', '.transact', function(e) {
    e.preventDefault();
    $('#transaction').modal('show');
    var id = $(this).data('id');
    $.ajax({
      type: 'POST',
      url: 'transact.php',
      data: {
        id: id
      },
      dataType: 'json',
      success: function(response) {
        $('#date').html(response.date);
        $('#transid').html(response.transaction);
        $('#detail').prepend(response.list);
        $('#total').html(response.total);
      }
    });
  });

  $("#transaction").on("hidden.bs.modal", function() {
    $('.prepend_items').remove();
  });
});

HTML 按钮在下方

<button type="button"  class="btn btn-info btn-sm btn-flat upload" data-value="".$row["id"].""><i class="fa fa-upload"></i> Upload</button>

标签: phpjquery

解决方案


我认为问题出在按钮的 html 行中,您试图将 php 变量中的数据元素的值连接起来。

尝试将其更改为使用单引号作为值并将您的 php 变量包装成这样的花括号

<button type="button" class="btn btn-info btn-sm btn-flat upload" data-value='{$row["id"]}'><i class="fa fa-upload"></i> Upload</button>

编辑:

刚刚意识到,您在第一个脚本部分中得到了错误的数据元素。它应该像

var value = $(this).data('value');

推荐阅读