gpt4 book ai didi

jquery - 无法获取后续

标记的 .text()

转载 作者:太空宇宙 更新时间:2023-11-04 16:23:12 25 4
gpt4 key购买 nike

我在解析 text() 时遇到了一些麻烦<p>的属性(property)标签。我在基于 Web 的跨平台应用程序(虚拟商店)中实现了一个简单的搜索栏,它将在 Dom 中查找并作为结果获取匹配的字符串(用户键入搜索栏的场景品牌/衬衫/笔等的名称,他/她会收到匹配的结果)。

我正在研究原型(prototype),只是为了确保基本结构能够滚动……因此,我使用了一堆 <p>标记为 DOM 元素并使用正则表达式对其应用搜索操作。这工作正常但奇怪的是我无法一个接一个地获取

标签的 .text() 属性,相反我得到所有 p 文本的内联文本作为输出 ...

(应用“vis”类以使文本不可见,并通过添加“yesvis”类使其可见...通过 removeClass() 和 addClass())这是示例 .html 文件.....

<!DOCTYPE html>
<html>
<head>
<title>Sample search page</title>
<link rel="stylesheet" href="jquery.mobile-1.4.2/jquery.mobile-1.4.2.css" />

<link rel="stylesheet" type="text/css" href="display.css">
<script src="jquery-1.11.0.js" type="text/javascript"></script>
<script src="jquery.mobile-1.4.2/jquery.mobile-1.4.2.js" type="text/javascript"></script>
<meta name="viewport" content="width=device-width"/>


</head>
<body>
<!-- This is the first page -->
<section id="firstpage" data-role="page">
<div data-role="header">
<h1>Page Content Header</h1>
</div>
<div class="ui-content">
<form>
<label for="srchbox"> Search here !</label>
<input type="search" id="srch" name="srchbox" />
<input type="submit" value="Search ."/>
</form>

<p class="vis">Shirt..... ?</p>
<p class="vis">pent</p>

<p class="vis">Coat</p>

<p class="vis">Tuxedo</p>



</div>
<div data-role="footer">
<h2>Page Content Footer</h2>
</div>
</section>

<script type="text/javascript">

$('form').on('submit',function(e){
e.preventDefault();

var value=$('#srch').val()
var Search=new RegExp(value,"i");
console.log(Search);//shows and works fine
$.each($('p'),function(i,p){

if( p[i].text().search(Search)>=-1){//throws an error .

$(this).removeClass('vis').addClass('yesvis');

} })
})







</script>
</body>
</html>

让我很困惑的输出是... enter image description here而另一个是这个....有人可以指导我完成它吗? enter image description here

最佳答案

来自 .text() 文档:

Get the combined text contents of each element in the set of matched elements, including their descendants, or set the text contents of the matched elements.

要单独获取文本内容,您可以执行以下操作

$('p').each(function() {
var txt = $(this).text();
// Do something with the string.
};

$('p')[0] 也应该可以正常工作。您还可以使用 $('p').get(0).

使用 $('p').eq(0)

关于jquery - 无法获取后续 <p> 标记的 .text(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27611665/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com