使用jquery从多个span获取数据

时间:2013-10-08 09:46:15

标签: jquery html

我目前正在获取点击提交按钮的数据,html代码如下:

<p class="post-meta-ab">
    <span>
        <a href="#">Diamond Burs set of 30 pcs A-24</a>
    </span><br />

    <span>
        <i class="icon-circle"></i>
        Details: Diamond Burs set of 30 pcs very useful assorted shapes
    </span><br />

    <span>
        <i class="icon-circle"></i>
        Shipping Weight: 100 gms
    </span><br />

    <span>
        <i class="icon-circle"></i>
        Price: &#8364; 2.50
    </span><br />

    <span>
        <i class="icon-circle"></i>
        Quantity: 
        <input type="text" style="width:20px" maxlength="100" name="a1" id="a1" />        
        <input type="submit" value="Add" style="margin-top:-8px" class="btn btn-danger" name="asubmit" id="a1sub" />
    </span>
</p>

我使用以下jquery代码获取span数据:

$('input[type=submit]').click(function(){
    var productname = $(this).parent().parent().text() + $(this).parents('p').find('input:text').val();
    alert(productname); 
});

现在我收到了跨度数据,但我希望每个span代码后面都有空格,请帮我解决。

2 个答案:

答案 0 :(得分:1)

这样做

$('input[type=submit]').click(function(){
var alldata = "";
$('span').each(function(){
    var $span = $(this);        
    var spanTxt = $span.text();
    alldata += spanTxt + " ";     
}); 
alert(alldata);
});

此处所有数据都包含所有跨度文本

Demo Fiddle

在这里,我使用了一些额外的变量来显示当前跨度的文本以便理解,如果你愿意,可以将它们松散

答案 1 :(得分:0)

不得不做深入的研究,终于找到了解决办法,就是这样。

    $(document).ready(function() {
      $('input[type=submit]').click(function(i){
      var txt="";
      txt=txt + "\n" + $(this).text();
      });
      txt= txt + $(this).parents('p').find('input:text').val();
      alert(txt);
          });
      return false;
    });