如果Dom对象只有一个元素,则返回未定义的Jquery变量
我在wordpress插件上使用此代码返回用户在wordpress媒体上传程序中选择的图像的src 问题在于,如果只有上传程序屏幕返回的图像,则此代码不会返回图像src Jquery代码:如果Dom对象只有一个元素,则返回未定义的Jquery变量,jquery,wordpress,dom,html-parsing,Jquery,Wordpress,Dom,Html Parsing,我在wordpress插件上使用此代码返回用户在wordpress媒体上传程序中选择的图像的src 问题在于,如果只有上传程序屏幕返回的图像,则此代码不会返回图像src Jquery代码: window.send_to_editor = function(html) { alert(html); imgurlv = jQuery(html).find('img').attr('src'); alert(imgurlv); jQuery(targetfield3).val(imgurlv
window.send_to_editor = function(html) {
alert(html);
imgurlv = jQuery(html).find('img').attr('src');
alert(imgurlv);
jQuery(targetfield3).val(imgurlv);
tb_remove();
}
例如:
上载程序返回的代码为:
<a class="shutterset_" href='http://localhost/1/wp-content/gallery/bm/01.jpg' title=''><img src='http://localhost/1/wp-content/gallery/bm/thumbs/thumbs_01.jpg' alt='01' class='ngg-singlepic ngg-none' /></a>
img src的返回方式如下:
但如果上传程序返回的代码是:
<img src='http://localhost/1/wp-content/gallery/bm/thumbs/thumbs_01.jpg' alt='01' class='ngg-singlepic ngg-none' />
jquery代码返回未定义的
出什么问题了?你可以用以下方法解决:
imgurlv = jQuery("<div>" + html + "</div>").find('img').attr('src');
imgurlv=jQuery(“+html+”).find('img').attr('src');
问题是,“find”会查看当前元素的子元素。在第二种情况下,
img
元素是顶级元素,因此它的子元素都没有要查找的src
属性
imgurlv = jQuery("<div>" + html + "</div>").find('img').attr('src');
imgurlv=jQuery(“+html+”).find('img').attr('src');
问题是,“find”会查看当前元素的子元素。在第二种情况下,img
元素是顶级元素,因此它的子元素都没有要查找的src
属性