好的。我有点菜鸟......但不是那个菜鸟。 :)

我希望在 jQuery 中完成一个 find() ,它具有类似的点符号或“&&”结果。这是一个示例(不起作用):

data.find("continent_country[id = 'us'].state[id = 'in']").each(function(){
// what to do
}

或者
data.find("continent_country[id = 'us'] && state[id = 'in']").each(function(){
// what to do
}

有人告诉我尝试使用逗号,如下所示:
data.find("continent_country[id = 'us'], state[id = 'in']").each(function(){
// what to do
}

...但这会返回错误的项目。

我的 XML 看起来像这样:
    <continent_country id="us" name="U.S.">
        <state id="al" name="Alabama">
            <city url="" name="auburn"/>
            <city url="" name="birmingham"/>
            <city url="" name="dothan"/>
            <city url="" name="florence / muscle shoals"/>
            <city url="" name="gadsden-anniston"/>
            <city url="" name="huntsville / decatur"/>
            <city url="" name="mobile"/>
            <city url="" name="montgomery"/>
            <city url="" name="tuscaloosa"/>
        </state>
        <state>//more states</states>
    </continent_country>
    </continent_country id="eu" name="Europe">
        <state>//more states</states>
    </continent_country>

一些州/省/国家共享相同的 id,这就是为什么我想在指定的 continent_country 中找到一个州。

提前致谢...

最佳答案

我想你想要 child 的符号:

http://api.jquery.com/child-selector/

就像是

data.find('continent_country[id = 'us'] > state[id='in']).each(function(){
   //do your stuff here
}

关于带有点符号的jQuery多重选择器?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/9569271/

10-11 22:23
查看更多