javascript - 检查div文本jquery中是否存在字符串

标签 javascript jquery html

var qtr = $('div').text();
var qtr1 = qtr.split(',')
console.log(qtr1.length)

for (var i = 0; i < qtr1.length; i++) {
  console.log(qtr1[i]);
}
console.log(qtr1);
if ($.inArray('1st qtr', qtr1)) {
  alert('1st');
}
if ($.inArray('2nd qtr', qtr1)) {
  alert('2nd');
}
if ($.inArray('3rd qtr', qtr1)) {
  alert('3rd');
}
if ($.inArray('4th qtr', qtr1)) {
  alert('4th');
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<div>1st qtr,2nd qtr,3rd qtr,4th qtr,</div>

我有一个包含文本的 div 我想检查 div 中是否有特定文本。我尝试拆分 div 文本并检查 $.inArray 但第一个文本即使丢失也不会显示。

问题:

  1. 为什么即使只有 4 个文本,我得到的长度也是 5。最后加一个空格
  2. 为什么 1st qtr 的第一个文本即使存在也没有显示。
  3. 检查文本中是否存在文本的最佳方法是什么。

最佳答案

Why do i get 5 as length in even if there are only 4 text. An extra space is being added at the last

字符串末尾包含,。当使用 , 拆分字符串时,将添加一个空字符串作为最后一个元素,因为在最后一个 , 之后没有任何内容。您可以使用正则表达式删除最后一个 ,

Why is the first text which is 1st qtr now shown even if it is existing.

inArray 返回在字符串中找到的子字符串的索引。因此,对于第一个字符串,返回索引 0。由于 0 是假值,if 条件的计算结果为 false 并且不执行该 block 。

更新代码

var qtr = $('div').text().replace(/,$/, '');
var qtr1 = qtr.split(',');

console.log(qtr1.length)

if ($.inArray('1st qtr', qtr1) !== -1) {
  alert('1st');
}
if ($.inArray('2nd qtr', qtr1) !== -1) {
  alert('2nd');
}
if ($.inArray('3rd qtr', qtr1) !== -1) {
  alert('3rd');
}
if ($.inArray('4th qtr', qtr1) !== -1) {
  alert('4th');
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<div>1st qtr,2nd qtr,3rd qtr,4th qtr,</div>

What is the best to check if a text is existing in a text.

indexOf 最好检查字符串是否包含子串

var str = '1st qtr,2nd qtr,3rd qtr,4th qtr,';

var contains = str.indexOf('4th qtr') > -1;

alert('str contains  4th qtr? ' + contains);

关于javascript - 检查div文本jquery中是否存在字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32962807/

相关文章:

javascript - 如何在 when 函数中延迟 promise

html - 什么会导致 css background-image 属性不显示图像,而 HTML <img> 会毫无问题地显示它?

javascript - ng-repeat中的OrderBy随机

php - 仅当页面某个区域中没有相同的数字时才执行代码?

javascript - Ajax提交到asp.net mvc post操作或将集合转换为json?

ajax - 如何使用 jQuery 实现 ajax 请求队列

java - html页面不会在android api 8 webview中呈现但在浏览器中可以

javascript - 如何解决双 Lottie 动画问题

javascript - 如何创建 session 并让用户稍后填写数据

javascript - Google App Script - 如何在不定义对象的情况下使用方法