Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/jpa/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery 在选择器后查找值_Jquery - Fatal编程技术网

Jquery 在选择器后查找值

Jquery 在选择器后查找值,jquery,Jquery,我有以下html代码片段 <ul class="product"> <li><span>Available:</span>123</li> <li><span>Code:</span>12345</li> </ul> 但这将存储可用:123。我只需要数值 有什么想法吗 谢谢 样本: EDIT:上述解决方案希望LI元素除了要检索的数字之外,只有一种类型的HTML元素,即sp

我有以下html代码片段

<ul class="product">
 <li><span>Available:</span>123</li>
 <li><span>Code:</span>12345</li>
</ul>
但这将存储
可用:123
。我只需要数值

有什么想法吗

谢谢

样本:

EDIT:上述解决方案希望
LI
元素除了要检索的数字之外,只有一种类型的HTML元素,即
span
,如果要将
div
添加到LI中,这将不起作用

为了处理这个问题,我将
Price
包装在
span
的HTML中,并访问它以避免此类问题

所以我的HTML看起来像

<ul class="product">
    <li><span>Available:</span><span class="price">123</span></li>
    <li><span>Code:</span><span class="price">123</span></li>
</ul>
样品

样本:

EDIT:上述解决方案希望
LI
元素除了要检索的数字之外,只有一种类型的HTML元素,即
span
,如果要将
div
添加到LI中,这将不起作用

为了处理这个问题,我将
Price
包装在
span
的HTML中,并访问它以避免此类问题

所以我的HTML看起来像

<ul class="product">
    <li><span>Available:</span><span class="price">123</span></li>
    <li><span>Code:</span><span class="price">123</span></li>
</ul>

示例

无法创建一个可以执行您所需操作的选择器。理想情况下,您可以修改HTML并添加类和另一个值范围。如果您不能这样做,那么只要始终有冒号和后面的值,您就可以使用:

var a = $(".product li:contains('Available')").text().split(":")[1];

没有办法创建一个选择器来实现您想要的功能。理想情况下,您可以修改HTML并添加类和另一个值范围。如果您不能这样做,那么只要始终有冒号和后面的值,您就可以使用:

var a = $(".product li:contains('Available')").text().split(":")[1];

或者,您可以遍历标识的
  • 的子节点,并使用文本节点的值

    var myLi = $(".product li:contains('Available')")[0];
    
    var a;
    for(var i = 0; i < myLi.childNodes.length; i++) {
        if(myLi.childNodes[i].nodeType === 3) {
            a = myLi.childNodes[i].nodeValue;
        }       
    }
    
    alert(a);
    
    var myLi=$(“.product li:contains('Available')”)[0];
    var a;
    对于(var i=0;i

    识别感兴趣的
  • 需要一点jQuery,然后使用纯Javascript进行迭代。

    或者,您可以迭代识别的
  • 的子节点,并使用文本节点的值

    var myLi = $(".product li:contains('Available')")[0];
    
    var a;
    for(var i = 0; i < myLi.childNodes.length; i++) {
        if(myLi.childNodes[i].nodeType === 3) {
            a = myLi.childNodes[i].nodeValue;
        }       
    }
    
    alert(a);
    
    var myLi=$(“.product li:contains('Available')”)[0];
    var a;
    对于(var i=0;i

    这有点像jQuery,用于识别您感兴趣的
  • ,然后使用纯Javascript进行迭代。

    您可以添加一个正则表达式来提取数字

     var a = $(".product li:contains('Available')").text();
     var number = a.match(/[0-9]+/)[0];
    

    您可以添加正则表达式来提取数字

     var a = $(".product li:contains('Available')").text();
     var number = a.match(/[0-9]+/)[0];
    

    您始终可以使用
    拆分
    变量以获得所需的值,但我相信有人能够调整您的原始选择器。最简单的解决方案(尽管可能不是最容易实现的)是使用唯一类将
    123
    包装到另一个
    中并使用
    。查找('.classname').text()
    。您始终可以使用
    拆分
    变量以获得所需的值,但我相信有人能够调整您的原始选择器。最简单的解决方案(尽管可能不是最容易实现的)是使用唯一类将
    123
    包装到另一个
    中并使用
    。查找('.classname').text()
    。比我的好得多。+1比我的好得多。+1