题
我试图从源代码中获取这一点,即:
<a href="javascript:validateCB();"><img src="wwv_flow_file_mgr.get_file?p_security_group_id=1343380920146312332&p_flow_id=222&p_fname=submit_btn.gif" alt="Submit Details" border="0" />
转换为 jQuery 选择器格式
var $templateButtons = $('img[src^="wwv_flow_file_mgr"]').parent('a');
但这似乎并不正确。
有什么想法如何将上面的视图源代码转换为 jQuery 吗?
谢谢,托尼。
解决方案
问题出在属性选择器上: $('img[src^="wwv_flow_file_mgr"]')
你正在经历一个 已知错误 在 jQuery v1.3.2 中 - jQuery 尝试使用其绝对 URL 来解释图像路径,这意味着它所比较的 URL 实际上以“开头”http://...
"
您可以使用以下方法暂时解决此问题 *=
(它查找包含文本“wwv_flow_file_mgr”的属性值,而不是以其开头):
var $templateButtons = $('img[src*="wwv_flow_file_mgr"]').parent('a');
其他提示
这很奇怪,它不适用于您拥有的选择器,不过,我认为它应该。
然而,虽然不是很干净,但它确实可以使用过滤器,如下所示。
var $templateButtons = $("img")
.filter(function(){
return $(this).attr('src')
.indexOf('wwv_flow_file_mgr')==0;
}).parent('a');
不隶属于 StackOverflow