从动态创建的按钮获取价值

时间:2015-08-06 04:23:32

标签: javascript jquery

我从数据库获取动态按钮的事情是,我想使用创建按钮中的值来获取数据,但是当我单击按钮时,即使我点击不同的第一个按钮的值也会传递button.here是我的js代码来获取按钮值。

function prodata1()
     {
       $(document).ready(function(){
           $("#show").click(function(){
                 var show=$("#show").val();
                 $.ajax({
                    type:"post",
                    url:"assets/exec/compare-exec.php",
                    data:"show="+show,
                    success:function(data){
                    $("#link2").html(data);
                    }
                   });
              });
         });
       }

2 个答案:

答案 0 :(得分:3)

可能您在所有按钮中使用相同的id(#show)。 ID必须在页面中是唯一的。在id中提供不同的名称或尝试使用类。并将您的代码更改为:

    function prodata1()
    {
       $(document).ready(function(){
           $(".show").click(function(){
                 var show=$(this).val();
                 $.ajax({
                    type:"post",
                    url:"assets/exec/compare-exec.php",
                    data:"show="+show,
                    success:function(data){
                    $("#link2").html(data);
                    }
                   });
              });
         });
       }

答案 1 :(得分:0)

你有很多不必要的代码,这应该有效。您不应该拥有多个具有相同ID的元素。

我已将ID更改为类,并在点击

上传递元素引用
<button class="show" name="show"value="<?php echo $data['pid']; ?>" onclick="javascript:prodata1(this)">clickme</button>

使用e捕获点击次数,您可以轻松获得e.value的值,同时结构化数据的方式也不正确。

function prodata1(e) {
  $.ajax({
    type:"post",
    url:"assets/exec/compare-exec.php",
    data: {show: e.value},
    success:function(data){
      $("#link2").html(data);
    }
  });
}