获取具有相同类的段落的值

时间:2015-10-27 08:48:59

标签: javascript jquery

所以基本上我在滑块内有大约20个段落,每个段落都有一个共享按钮,可以复制它的innerHTML。

示例:

<p class="parag">content</p>
<button onclick="share();"></button>
<p class="parag">diff content</p>
<button onclick="share();"></button>
<p class="parag">another content</p>
<button onclick="share();"></button>

我可以制作类似数组的内容,以便一次获得一个段落吗?因为当我按下第一个共享按钮时,代码会复制第一个段落,如果我按下第二个共享按钮,我仍然会复制第一个段落而不是第二个段落。 希望我能正确解释我的问题,并提前感谢你。

6 个答案:

答案 0 :(得分:1)

尝试:

$(document).ready(function() {
    myArray = [];
    $("p").each(function(){ 
         alert($(this).attr("class")) 
         myArray.push($(this).attr("class"))
    })
})
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<p class="parag">content</p>
<button onclick="share();"></button>
<p class="parag">diff content</p>
<button onclick="share();"></button>
<p class="parag">another content</p>
<button onclick="share();"></button>

答案 1 :(得分:0)

function share(element) {
    $(element).prev('p').text();    //the p tag content based on the button
}

还在功能

中提及this

<button onclick="share(this);"></button>

答案 2 :(得分:0)

试试这个

&#13;
&#13;
$('button').click(function(e) {
  alert($(this).prev().text());
});
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script>
<p class="parag">content</p>
<button>Share</button>
<p class="parag">diff content</p>
<button>Share</button>
<p class="parag">another content</p>
<button>Share</button>
&#13;
&#13;
&#13;

JS

&#13;
&#13;
function share(ele) {
  alert(ele.previousElementSibling.innerHTML);
}
&#13;
<p class="parag">content</p>
<button onclick="share(this);">Share</button>
<p class="parag">diff content</p>
<button onclick="share(this);">Share</button>
<p class="parag">another content</p>
<button onclick="share(this);">Share</button>
&#13;
&#13;
&#13;

答案 3 :(得分:0)

你能做的是

<强> HTML

<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<p class="parag">content</p>
<button>1</button>
<p class="parag">diff content</p>
<button>2</button>
<p class="parag">another content</p>

<强> 的Javascript

function share(button) {
    alert(button.prev().text());
}
$(document).ready(function () {
    $('button').click(function () {
        share($(this))
     });
});

JS Fiddle Demo

答案 4 :(得分:0)

试试这个

&#13;
&#13;
$(document).ready(function() {
   $('button').click(function(e) {
     alert($(this).prev(".parag").text());
   });
})
    
    
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<p class="parag">content</p>
<button onclick="share();">content</button>
<p class="parag">diff content</p>
<button onclick="share();">diff</button>
<p class="parag">another content</p>
<button onclick="share();">another</button>
&#13;
&#13;
&#13;

答案 5 :(得分:0)

你可以这样尝试

<p class="parag">content</p> <button onclick="share(this);"></button> <p class="parag">diff content</p><button onclick="share(this);"></button> <p class="parag">another content</p><button onclick="share(this);"></button>

分享功能

function share(that){ alert($(that).prev('.parag').html()); }