代码之家  ›  专栏  ›  技术社区  ›  Josh Stodola

jQuery选择器:Id以?

  •  357
  • Josh Stodola  · 技术社区  · 16 年前

    有没有 selector

    假设我有一个id为的元素 ctl00$ContentBody$txtTitle txtTitle ?

    9 回复  |  直到 6 年前
        1
  •  657
  •   Mohammad DefenestrationDay    6 年前

    如果您知道元素类型,则:(例如:将'element'替换为'div')

    $("element[id$='txtTitle']")
    

    $("[id$='txtTitle']")
    

    More information available


    // the old way, needs exact ID: document.getElementById("hi").value = "kk";
    $(function() {
      $("[id$='txtTitle']").val("zz");
    });
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
    <input id="ctl_blabla_txtTitle" type="text" />
        2
  •  256
  •   Community CDub    8 年前

    这个问题的答案是 $("[id$='txtTitle']") , as Mark Hurd answered ,但对于那些像我一样希望找到所有id为 开始于 对于给定的字符串(例如txtTitle),请尝试以下操作( doc ) :

    $("[id^='txtTitle']")
    

    给定字符串( doc ) :

    $("[id*='txtTitle']")
    

    不是 给定字符串( doc

    $("[id!='myValue']")
    

    包含由空格分隔的给定单词 doc ) :

    $("[id~='myValue']")
    

    等于给定字符串或以该字符串开头,后跟连字符 doc ) :

    $("[id|='myValue']")
    
        3
  •  35
  •   kkyy    16 年前

    尝试

    $("element[id$='txtTitle']");
    

        4
  •  33
  •   Scott Evernden    16 年前
    $('element[id$=txtTitle]')
    

    严格来说,没有必要引用匹配的文本片段

        5
  •  13
  •   madth3 MCL    11 年前

    在搜索的术语中添加下划线或$更安全,因此它不太可能匹配以相同ID结尾的其他元素:

    $("element[id$=_txtTitle]")
    

    要素 div , input

    (注意,您建议您的ID中有$signs,但我认为.NET2现在倾向于在ID中使用下划线,因此我的示例使用下划线)。

        6
  •  3
  •   Anton Kraievyi    14 年前

    选择全部 <a>

    jQuery("a[id$=_edit]")
    

    jQuery("a[id$='_edit']")
    
        7
  •  3
  •   Michael    12 年前

    $('<%= txtTitle.ClientID %>')
    

    这将导致。。。

    $('ctl00$ContentBody$txtTitle')
    

    ... 当呈现页面时。

    注意:在VisualStudio中,Intellisense会因为在JavaScript中放置ASP标记而对您大喊大叫。您可以忽略这一点,因为结果是有效的JavaScript。

        8
  •  1
  •   Raul Rene    13 年前

    试试这个:

    <asp:HiddenField ID="0858674_h" Value="0" runat="server" />
    
    var test = $(this).find('[id*="_h"').val();
    
        9
  •  0
  •   neelmeg    13 年前

    以便在包含多个iframe的页面中查找以“iframe”结尾的iframe id。

    jQuery(document).ready(function (){     
                      jQuery("iframe").each(function(){                     
                        if( jQuery(this).attr('id').match(/_iFrame/) ) {
                                alert(jQuery(this).attr('id'));
    
                         }                   
                      });     
             });