jquery 如何查找当前页面有无某个字符

时间:2021-08-14 20:42:00
<asp:Content ID="Content2" ContentPlaceHolderID="MainContent" runat="server">
        <asp:ScriptManager ID="ScriptManager1" runat="server">
    </asp:ScriptManager>
    <table cellpadding="0" cellspacing="5" border="0">
</table>
</asp:Content>
我想判断当前页面有无ScriptManager,如何实现?

12 个解决方案

#1


该回复于2011-09-08 16:04:24被版主删除

#2


[a href="http://www.zuoyefeng.com/html/2006-04/55.htm"]参考[/a]

#3


貌似你这个不好找  因为你这个是个标签  到页面上会被转成html,那你可以用
var htmlStr = body.innerHTML;  来取到页面上所有的  html  ,然后判断htmlStr里有没有你要的东西
var isHave = htmlStr.indexOf(你要搜索的东西);
如果有的话 isHave  返回这个字符在htmlStr的位置,如果没有返回-1
这样你就可以判断了

#4


var flag=/(.)*asp:ScriptManager(.)*)/.match(document.body.innerHTML);
if(!flag){alert("页面含有ScriptManager标签")}

#5


引用 2 楼 zsx841021 的回复:
[a href="http://www.zuoyefeng.com/html/2006-04/55.htm"]参考[/a]

你除了search还会什么???

#6


jquery不是那个contains方法吗?你用这个方法呀。

#7


楼主思路有问题。runat="server"的是服务端控件,JQ是客户端的JS,你怎么能让射出去的箭回头诉说弓弦的依恋?

查找当前页面有无“ScriptManager”字串肯定不行,换个思路,凡具有ID的,在返回客户端的页面里也必然具有ID(但却是转化为客户端ID的形式),因此,查找对应的客户端ID是否存在即可:

在文档末尾加上这样的脚本:
<script>
var theforever_csdn=document.getElementById("<%=ScriptManager1.clientID%>");
if(theforever_csdn)alert('存在'); else alert('不存在');
</script>

#8




ScriptManager.GetCurrent(this) == null

#9


引用 6 楼 licip 的回复:
jquery不是那个contains方法吗?你用这个方法呀。

试过了,jquery连<asp:...>这个obj都得不到

#10


$("*").find(),方法可以查找当前页面元素,不过asp.net都会将tagname为asp:XX的元素转换的,最好加个id属性,就好找了。

#11


貌似你这个不好找 因为你这个是个标签 到页面上会被转成html,那你可以用
var htmlStr = body.innerHTML; 来取到页面上所有的 html ,然后判断htmlStr里有没有你要的东西
var isHave = htmlStr.indexOf(你要搜索的东西);
如果有的话 isHave 返回这个字符在htmlStr的位置,如果没有返回-1
这样你就可以判断了

#12


都从服务器端传到了客户端,那还有这些

#1


该回复于2011-09-08 16:04:24被版主删除

#2


[a href="http://www.zuoyefeng.com/html/2006-04/55.htm"]参考[/a]

#3


貌似你这个不好找  因为你这个是个标签  到页面上会被转成html,那你可以用
var htmlStr = body.innerHTML;  来取到页面上所有的  html  ,然后判断htmlStr里有没有你要的东西
var isHave = htmlStr.indexOf(你要搜索的东西);
如果有的话 isHave  返回这个字符在htmlStr的位置,如果没有返回-1
这样你就可以判断了

#4


var flag=/(.)*asp:ScriptManager(.)*)/.match(document.body.innerHTML);
if(!flag){alert("页面含有ScriptManager标签")}

#5


引用 2 楼 zsx841021 的回复:
[a href="http://www.zuoyefeng.com/html/2006-04/55.htm"]参考[/a]

你除了search还会什么???

#6


jquery不是那个contains方法吗?你用这个方法呀。

#7


楼主思路有问题。runat="server"的是服务端控件,JQ是客户端的JS,你怎么能让射出去的箭回头诉说弓弦的依恋?

查找当前页面有无“ScriptManager”字串肯定不行,换个思路,凡具有ID的,在返回客户端的页面里也必然具有ID(但却是转化为客户端ID的形式),因此,查找对应的客户端ID是否存在即可:

在文档末尾加上这样的脚本:
<script>
var theforever_csdn=document.getElementById("<%=ScriptManager1.clientID%>");
if(theforever_csdn)alert('存在'); else alert('不存在');
</script>

#8




ScriptManager.GetCurrent(this) == null

#9


引用 6 楼 licip 的回复:
jquery不是那个contains方法吗?你用这个方法呀。

试过了,jquery连<asp:...>这个obj都得不到

#10


$("*").find(),方法可以查找当前页面元素,不过asp.net都会将tagname为asp:XX的元素转换的,最好加个id属性,就好找了。

#11


貌似你这个不好找 因为你这个是个标签 到页面上会被转成html,那你可以用
var htmlStr = body.innerHTML; 来取到页面上所有的 html ,然后判断htmlStr里有没有你要的东西
var isHave = htmlStr.indexOf(你要搜索的东西);
如果有的话 isHave 返回这个字符在htmlStr的位置,如果没有返回-1
这样你就可以判断了

#12


都从服务器端传到了客户端,那还有这些