如何通过jquery通配符搜索数据属性的确切包含值?

时间:2016-03-15 09:27:23

标签: javascript jquery html

我在页面中使用data_attribute,并且我有以下元素和data属性。

No. 1.<div class="row hidden" data-party-registration-source-type-id="1">
    2.<div class="row hidden" data-party-registration-source-type-id="2,3">
    3.<div class="row hidden" data-party-registration-source-type-id="3">
    4.<div class="row hidden" data-party-registration-source-type-id="4,5">
    5.<div class="row hidden" data-party-registration-source-type-id="11">
    6.<div class="row hidden" data-party-registration-source-type-id="10">

现在我要显示所有具有data-party-registration-source-type-id = 3的div 它将显示No.2和3.我正在使用它来搜索

var partyRegistrationSourceId = $partyRegistrationSourceTypes.val();

 $('[data-party-registration-source-type-id*=' + partyRegistrationSourceId + ']').removeClass("hidden");

工作正常,现在的问题是,当我想用​​id“1”搜索时,它会带来数字1,5,6。每个包含1的id,它都会带来它。我只想要身份证1.我怎么能这样做?如果我用这个:

$('[data-party-registration-source-type-id=' + partyRegistrationSourceId + ']').removeClass("hidden");

然后它会在这种情况下起作用,但不适用于上述情况。我如何搜索包含完全id的所有id?

1 个答案:

答案 0 :(得分:1)

你可以尝试为每个键添加一些分隔符:

<div class="row hidden" data-party-registration-source-type-id="{1}">
<div class="row hidden" data-party-registration-source-type-id="{2},{3}">
<div class="row hidden" data-party-registration-source-type-id="{3}">

var partyRegistrationSourceId = $partyRegistrationSourceTypes.val();

$("[data-party-registration-source-type-id*='{" + partyRegistrationSourceId + "}']").removeClass("hidden");

让我知道是否适合您的问题或不是您需要的