Jquery Selector包含AND结尾?

时间:2015-06-05 14:04:33

标签: jquery asp.net datagrid

我在datagrid TemplateColumns中有一堆服务器生成的控件(aspx,如果它很重要)。我想将$("").click()功能添加到datagrid中jquery togglesAssociatedID控件的每个标签。

这些标签的名称很长但可以预测,并且基于父网格和给它们的ID ...我已经给了ID xmlReveal AssociatedIDControl的标签MainGridXMLTemplateLabel的{​​{1}}和父网格称为MainGrid,因此标签的呈现html类似于

<label id="ctl00_plcMain_MainGrid_ctl08_xmlReveal" for="ctl00_plcMain_MainGrid_ctl08_MainGridXMLTemplateLabel">Click to reveal XML</label>

然后在脚本标签中,我有类似

的内容
$("XXXXXX").click(function(){
    $("#" + $(this).attr("for")).toggle()
});

所以我需要的是XXXXXX的选择器,其中id包含(*=)“MainGrid”并以($=结尾)xmlReveal

编辑:混淆以(^=)开头,以($=)结束... [已修复]

1 个答案:

答案 0 :(得分:2)

使用jQuery ends with ($ =),如

console.log($('[id*="MainGrid"][id$="xmlReveal"]').length);

当您组合没有空格的选择器时,它将使条件包含 AND 结束

&#13;
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>
<label id="ctl00_plcMain_MainGrid_ctl08_xmlReveal" for="ctl00_plcMain_MainGrid_ctl08_MainGridXMLTemplateLabel">Click to reveal XML</label>
&#13;
{{1}}
&#13;
&#13;
&#13;