Javascript 如何选择id包含的html元素

Javascript 如何选择id包含的html元素,javascript,ecmascript-6,Javascript,Ecmascript 6,如何选择id包含给定字符串的html元素?QuerySelector会实现这一点吗?我知道我可以选择类、id、属性等。。。使用querySelectorAll 只是不确定我需要做什么的正确方法 下面是一些代码,我只想获取id包含Home的元素 <div id="ContactContainer> <input class="form-control input-sm clear" is-required="false" validate-number="" minlen

如何选择id包含给定字符串的html元素?QuerySelector会实现这一点吗?我知道我可以选择类、id、属性等。。。使用querySelectorAll

只是不确定我需要做什么的正确方法

下面是一些代码,我只想获取id包含Home的元素

<div id="ContactContainer>
    <input class="form-control input-sm clear" is-required="false" validate-number="" minlength="1" maxlength="3" id="txtCustomerWorkAreaCode" placeholder="9999">
    <input class="form-control input-sm clear" is-required="false" validate-number="" minlength="1" maxlength="3" id="txtCustomerWorkExchange" placeholder="9999">
    <input class="form-control input-sm clear" is-required="false" validate-number="" minlength="4" maxlength="4" id="txtCustomerWorkSuffix" placeholder="9999">


    <input class="form-control input-sm clear" is-required="false" validate-number="" minlength="1" maxlength="3" id="txtCustomerHomeAreaCode" placeholder="9999">
    <input class="form-control input-sm clear" is-required="false" validate-number="" minlength="1" maxlength="3" id="txtCustomerHomeExchange" placeholder="9999">
    <input class="form-control input-sm clear" is-required="false" validate-number="" minlength="4" maxlength="4" id="txtCustomerHomeSuffix" placeholder="9999">


    <input class="form-control input-sm clear" is-required="false" validate-number="" minlength="1" maxlength="3" id="txtCustomerMobileAreaCode" placeholder="9999">
    <input class="form-control input-sm clear" is-required="false" validate-number="" minlength="1" maxlength="3" id="txtCustomerMobileExchange" placeholder="9999">
    <input class="form-control input-sm clear" is-required="false" validate-number="" minlength="4" maxlength="4" id="txtCustomerMobileSuffix" placeholder="9999">
</div>

您可以使用如下所示的通配符选择器来匹配部分属性标记,包括id

document.querySelector('[id*="MobileAreaCode"]');
如果希望返回多个元素,请使用querySelectorAll

document.querySelectorAll('[id*="Mobile"]');

在我看来,您最好为此添加类。使用
document.querySelectorAll(“#ContactContainer”)
获取父容器,然后获取此元素的子元素,如果Id等于所需的Id,则遍历children和
forEach
元素,然后将其推送到数组中或使用它执行任何操作。这可能会有所帮助:如果我遗漏了某些内容,则表示抱歉,但这符合您的建议,但是如果元素包含字符串(如Home或Mobile),则如何查找这些元素。可能我理解不正确?是否在id属性中包含字符串?如果您正在查找ID属性(或任何其他属性)中包含字符串一部分的多个元素,我将更新我的答案以说明如何更新。是的……因此,使用此TXTSCustomerHomeAreaCode,我希望找到ID包含Home等的元素……这就成功了,谢谢。我现在唯一的问题是,这些元素位于div中,它们的id中包含相同的文本,所以现在我需要了解如何获取输入。谢谢你选择了正确的道路,我刚刚想好了