0

私は文字列を持っています

str = '<iframe width="100%" height="300" frameborder="0" scrolling="no" marginheight="0" marginwidth="0" src="https://maps.google.com/maps?f=q&amp;source=s_q&amp;hl=vi&amp;geocode=&amp;q=Vimcom+91+b%C3%A0+tri%E1%BB%87u&amp;aq=&amp;sll=15.125395,108.795111&amp;sspn=0.034096,0.038581&amp;ie=UTF8&amp;hq=Vimcom+91+b%C3%A0+tri%E1%BB%87u&amp;hnear=&amp;radius=15000&amp;t=m&amp;ll=21.011605,105.849323&amp;spn=0.048074,0.051498&amp;z=13&amp;output=embed"></iframe><br /><small><a href="https://maps.google.com/maps?f=q&amp;source=embed&amp;hl=vi&amp;geocode=&amp;q=Vimcom+91+b%C3%A0+tri%E1%BB%87u&amp;aq=&amp;sll=15.125395,108.795111&amp;sspn=0.034096,0.038581&amp;ie=UTF8&amp;hq=Vimcom+91+b%C3%A0+tri%E1%BB%87u&amp;hnear=&amp;radius=15000&amp;t=m&amp;ll=21.011605,105.849323&amp;spn=0.048074,0.051498&amp;z=13" style="color:#0000FF;text-align:left">Xem Bản đồ cỡ lớn hơn</a></small>'

str文字列からjavascript(no-jquery)を使用してattr srcを取得するには? 感謝!

4

3 に答える 3

0

これを試して: str.match(/.*src="([^"]+).*/)[1]

于 2013-06-10T04:59:56.750 に答える
0

コードで正規表現を使用すると面白いかもしれません: http://www.w3schools.com/jsref/jsref_obj_regexp.aspおよびhttp://www.w3schools.com/js/js_obj_regexp.asp

この正規表現は機能するはずです:

/src="[^\ ]*"/i
于 2013-06-10T05:07:30.940 に答える
0

あなたはこれを行うことができます:

var str = '<iframe width="100%" height="300" frameborder="0" scrolling="no" marginheight="0" marginwidth="0" src="https://maps.google.com/maps?f=q&amp;source=s_q&amp;hl=vi&amp;geocode=&amp;q=Vimcom+91+b%C3%A0+tri%E1%BB%87u&amp;aq=&amp;sll=15.125395,108.795111&amp;sspn=0.034096,0.038581&amp;ie=UTF8&amp;hq=Vimcom+91+b%C3%A0+tri%E1%BB%87u&amp;hnear=&amp;radius=15000&amp;t=m&amp;ll=21.011605,105.849323&amp;spn=0.048074,0.051498&amp;z=13&amp;output=embed"></iframe><br /><small><a href="https://maps.google.com/maps?f=q&amp;source=embed&amp;hl=vi&amp;geocode=&amp;q=Vimcom+91+b%C3%A0+tri%E1%BB%87u&amp;aq=&amp;sll=15.125395,108.795111&amp;sspn=0.034096,0.038581&amp;ie=UTF8&amp;hq=Vimcom+91+b%C3%A0+tri%E1%BB%87u&amp;hnear=&amp;radius=15000&amp;t=m&amp;ll=21.011605,105.849323&amp;spn=0.048074,0.051498&amp;z=13" style="color:#0000FF;text-align:left">Xem Bản đồ cỡ lớn hơn</a></small>';

var div = document.createElement('div');
div.innerHTML = str;
alert(div.childNodes[0].getAttribute('src'));

http://jsfiddle.net/Dogbert/hxjpB/

文字列が で始まることを確認してください<iframe>。そうしないと、最初の childNode が textNode になり、これは機能しません。(必要に応じて、これらの場合にも機能する、より堅牢な方法があります。)

于 2013-06-10T05:02:07.443 に答える