2015-10-07 65 views
0

你好,我有幾個使用Jquery生成的按鈕。 現在我只能從點擊的按鈕中獲得值。點擊對象的jquery值

但我怎樣才能得到價值我一直得到一個空白的按摩。您可以在下面的 看到相關的代碼。

希望有人能幫助我。

$(document).ready(function(){ 
    var count=1; 
    var nr=0; 
    var pfad=[]; 
    $.ajax({ 
     method:"post", 
     url:"phpcode.php", 
     data:{func:"bilder"}, 
     success:function(data){ 
      var arr=[]; 
      images=data.split(";"); 
      länge=images.length; 
      for(i=0;i<länge;i++){ 
       arr[i]=data.split(";")[i]; 
      } 
      arr.pop(); 
      generate(arr); 
     } 
    }); 
    function generate(arr){ 
     länge=arr.length; 
     for(i=0;i<länge;i++){ 
      if(i<1){ 
       $("main").append("<div value="+count+" class='pfade'><a>bild"+count+":</a><input name='bild' value="+arr[i]+" placeholder='pfad' type='text'/><button class='button' data-count="+count+" type='button'>X</button></div> "); 
      count=count+1; 
      } 
      else{ 
       $("main").append("<div value="+count+" class='pfade'><a>bild"+count+":</a><input name='bild' value="+arr[i]+" placeholder='pfad' type='text'/><button class='button' data-count="+count+" type='button'>X</button></div> "); 
       count=count+1; 
      } 
     } 
    } 

    $("#del").click(function(){ 
     val=count-1; 
     $("div[value="+val+"]").remove(); 
     count=count-1; 
    }); 

    $(document).on("click",".button",function(){ 
     val=$(this).attr("data-count"); 
     alert(val); 
    }); 

    $("#more").click(function(){ 
     $("main").append("<div value="+count+" class='pfade'><a>bild"+count+":</a><input name='bild' value='' placeholder='pfad' type='text'/><button class='button' data-count="+count+" type='button'>X</button></div> "); 
     count=count+1; 
    }); 
    $("#sub").click(function(){ 
     var pfad=[]; 
     $("input[name='bild']").each(function(){ 
      if($(this).val()!= ""){ 
       pfad.push($(this).val()); 
      } 
     }); 
     alert(pfad); 
     $.ajax({ 
      url: "phpcode.php", 
      method: "POST", 
      data:{func:"addimg"}, 
      success:function(data){ 
      } 
     }); 
    }); 
}); 

這裏只是forHere是圖片顯示該按鈕實際上有一個值的圖像: button with value

+0

當然,但它不會幫助你,因爲按鈕是在Jquery代碼中生成的。 '

' – Caststupider

+0

在您所呼叫的'產生()'函數? –

+0

以上更新後的帖子與整個代碼 – Caststupider

回答

1

沒有什麼錯的事實你的代碼分開的按鈕有沒有價值屬性。 要通過按鈕的價值得到顯示的文本,你必須使用:的

val=$(this).text(); 

代替:

val=$(this).val(); 

如果您需要通過按鈕傳遞一些其它的值,你必須使用data- *屬性。 因此改變value=在你的按鈕與data-count=

<button class='button' data-count="+count+" type='button'>X</button> 

,然後檢索與值:

val=$(this).attr('data-count'); 

您的代碼適用於支持value屬性的表單元素。

+0

謝謝,這正是我需要的。我不知道一個按鈕不支持value屬性。 – Caststupider

+0

爲了獲得更好的可伸縮性,請將$(this).attr('data-count')更改爲$(this).data('count')。 – RGS

+0

是的。這更好 –