代码之家  ›  专栏  ›  技术社区  ›  van

jquery选择器从DIV复制文本并放在SPAN中

  •  0
  • van  · 技术社区  · 16 年前

    我需要一些jquery选择器帮助…

    我的HTML是

    <div id="Manager"><span>LastName, FirstName (UK)</span></div>
    
    <span id=ctl00_PlaceHolderMain_g_4118aa1d_2690_4da8_b2b2_dc1943e73968_LineManager/>
    

    我需要从DIV管理器中选择文本,并将其复制到包含文本行管理器的范围中。

    我有包含文本“linemanager”的范围的选择器

    $("span[id*='LineManager']")
    

    谢谢,

    5 回复  |  直到 16 年前
        1
  •  2
  •   Sarfraz    16 年前

    我需要从DIV中选择文本 经理,把它复制到范围内 其中包含文本行管理器。

    应该这样做:

    $("span[id*='LineManager']").text($('#Manager').text());
    
        2
  •  0
  •   ckramer    16 年前

    所以也许

    var managerText = $("#Manager span").html();
    $("span[id*='LineManager']").html(managerText);
    

    虽然 [id*=] 属性选择器不是很有效,所以如果您能找到其他方法来识别您的直线管理器,您可能会看到更好的性能。我通常喜欢使用基于类的选择器,但我不确定这是否是可以添加到LineManager范围中的内容。

        3
  •  0
  •   Babiker    16 年前

    jQuery:

        $(document).ready(function(){
            $("#button").click(function(){
                $("span[id*='LineManager']").html($("#Manager > span").html());
            }); 
        });
    

    HTML:

        <div id="Manager"><span>LastName, FirstName (UK)</span></div>
        <span id="ctl00_PlaceHolderMain_g_4118aa1d_2690_4da8_b2b2_dc1943e73968_LineManager"></span>
        <input type="button" id="button">
    
        4
  •  0
  •   Dr. Frankenstein    16 年前
    var span_text = $("div#Manager span");
    $("span[id*='LineManager']").text(span_text);
    

    如果可能的话,我建议您向具有真正长ID的SPAN元素添加一个非动态类(为了提高可靠性)。因此,您的HTML以这样的方式结束。

    <div id="Manager"><span class="target-js">LastName, FirstName (UK)</span></div>    
    <span class="fill-js" id="dynamicallyGeneratedString"/>
    

    然后您可以进行更易于维护的操作:

    var span_text = $("span.target-js");
    $('span.fill-js').text(span_text);
    
        5
  •  0
  •   dvcolgan    16 年前

    怎么样:

    $("span[id*='LineManager']").html = $('#Manager span').html
    

    编辑:哎呀,应该是

    $("span[id*='LineManager']").html($('#Manager span').html)
    

    正如其他人所指出的。