查找然后替换 Class 和文本到按钮

Find then Replace Class and text to Button

给定的脚本从 .label (text1 或任何文本) 中找到 text,然后添加 class class="text1" 到父列表 <li> 像这样:<li class="text1">

Jquery:

$('.label a').each(function() {
  $(this).closest('li').addClass($(this).text());
});

HTML:

<div id="main-id">

<button class="one"></button>  
    <button class="two"></button>  

<ul>

<li> <!--List 1-->
<span class="meta">
<div class="label">
<a href="http://lorem.com">text1</a> <!--This text-->
</div>
</span>
</li>

<li> <!--List 2-->
<span class="meta">
<div class="label">
<a href="http://lorem.com">text2</a> <!--This text-->
</div>
</span>
</li>

</ul>
</div>

通过这个脚本我们得到结果:

<ul>

<li class="text1"> <!--Got New class to List 1-->
<span class="meta">
<div class="label">
<a href="http://lorem.com">text1</a>
</div>
</span>
</li>

<li class="text2"> <!--Got New class List 2-->
<span class="meta">
<div class="label">
<a href="http://lorem.com">text2</a>
</div>
</span>
</li>

</ul>

请参阅示例 Fiddle >

现在 根据我的问题,我正在尝试替换 Class 和文本到按钮,有两个按钮,例如 <button class="one"></button><button class="two"></button>, 现在想在按钮内放置 class/text .text1(或任何 class), 喜欢: <button class="one text1">text1</li></button>
<button class="two text2">text2</li></button> 上面给出的相同 jquery。

我试过这个替换文本 script,但我做不到。对其他方法有什么建议吗? 提前致谢。

不确定您要做什么,但您可以尝试这样的事情。

<html>
<body>

    <div id="main-id">
        <button class="one"></button>  
        <button class="two"></button>  

        <ul id="main-list">
            <li>
                <span class="meta">
                    <div class="label">
                        <a href="http://lorem.com">text1</a>
                    </div>
                </span>
            </li>
            <li>
                <span class="meta">
                    <div class="label">
                        <a href="http://lorem.com">text2</a>
                    </div>
                </span>
            </li>
        </ul>

    </div>

<script src="//code.jquery.com/jquery-1.11.3.min.js"></script>
<script>
$(function(){

    var btns = ['.one', '.two'];

    $('#main-list li').each(function(k,el){
        // use clone if you don't want to remove original dom element
        var $li = $(el).clone(); 
        var className = $li.find('a').text();

        $li.addClass(className)
            .empty()
            .text(className);

        var $btn = $(btns[k]);
        $btn.append($li);
    });
});
</script>
</body>
</html>