Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/reporting-services/3.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或相当于JavaScript的PHP strps函数,用于在页面上查找字符串_Javascript_Jquery - Fatal编程技术网

jQuery或相当于JavaScript的PHP strps函数,用于在页面上查找字符串

jQuery或相当于JavaScript的PHP strps函数,用于在页面上查找字符串,javascript,jquery,Javascript,Jquery,JavaScript或jQuery中是否有类似于PHP中的strpos的等效函数 我想在页面上的元素中找到一个字符串。我要寻找的字符串是: td class="SeparateColumn" 我想要一些我可以像这样运行的东西来找到: if $("anystring") then do it 我假设您的意思是检查字符串是否包含字符,以及字符串中的位置-您希望使用JS中字符串的indexOf()方法。这是你的电话号码 好的,那么你想搜索整个页面!:contains()选择器将执行此操作。有

JavaScript或jQuery中是否有类似于PHP中的
strpos
的等效函数

我想在页面上的元素中找到一个字符串。我要寻找的字符串是:

td class="SeparateColumn"
我想要一些我可以像这样运行的东西来找到:

if $("anystring")
  then do it

我假设您的意思是检查字符串是否包含字符,以及字符串中的位置-您希望使用JS中字符串的
indexOf()
方法。这是你的电话号码


好的,那么你想搜索整个页面!
:contains()
选择器将执行此操作。有关
:包含
,请参见

要搜索页面中的每个元素,请使用

var has_string = $('*:contains("search text")');
如果返回jQuery元素,那么搜索就成功了。例如,就在这一页上

var has_string=$('*:contains("Alex JL")').length
//has_string is 18
var has_string=$('*:contains("horsey rodeo")').length
//has_string if 0. So, you could an `if` on this and it would work as expected.

这不需要jquery——使用
.indexof()
方法,简单的旧Javascript就可以了

但是,如果您真的希望PHP的strpos()具有精确的语法匹配,可以使用以下方法:

function strpos (haystack, needle, offset) {
  var i = (haystack+'').indexOf(needle, (offset || 0));
  return i === -1 ? false : i;
}
注意:此函数取自此处:


您使用的是纯Javascript中已经存在的一个?我明白了,所以您想在整个页面中搜索字符串?当我尝试在jQuery中使用时,我得到“indexOf不是一个函数”是否还有其他方法可以使用Javascript执行此操作?救命啊!当然,在例子中加入“马术竞技”的行为使得最后一部分在技术上是错误的,但我们不会陷入这个难题;如何检查该元素上是否有特定的字符串page@Tom
if($('td.SeparateColumn:contains(“字符串”)){/*dosomething*/}
应该这样做。谢谢,但这失败了:if(jQuery(“tr.SeparateRow:contains('mycode'))@Tom以哪种方式失败了?错误,或者找不到字符串?哦-你有
tr.SeparateRow
,我想你的意思是
td.SeparateRow
。IE8及以下版本不支持
indexOf
@YouBook,这是Array.indexOf(),而不是String.indexOf(),旧版本的IE不支持。