Извлеките код JavaScript из тега, используя js или jQuery.

StackOverflow https://stackoverflow.com/questions/1836998

  •  11-09-2019
  •  | 
  •  

Вопрос

Как мне получить вызов JavaScript в теге привязки ниже в JS или JQuery?По сути, я хочу получить код («javascript:do_my_function('blah', 'string1', 1);»), чтобы я мог его выполнить.Этот якорь также встроен в некоторые теги div на несколько глубин.

<a onmouseout="swapImage('btn1','','http://img2.comp.com/img/buttons/btn_g.png',1)" onmousedown="swapImage('btn1','','http://img2.comp.com/img/buttons/btn_g_d.png',1)" onmouseover="swapImage('btn1','','http://img2.comp.com/img/buttons/btn_g_a.png',1)" href="javascript:do_my_function('blah', 'string1', 1);">
<img id="btn1" width="180" height="60" alt="" src="http://img2.comp.com/img/buttons/btn_ge.png"/>
</a>
Это было полезно?

Решение

Чтобы получить его, просто используйте:

 var href = document.getElementById('btn1').parentNode.href;

Это просто находит img по идентификатору и захватывает его родителя, a рассматриваемый тег.

Чтобы вызвать его, вы можете использовать:

 window.location = href;

Или вы могли бы проанализировать его и eval() это.Все это, кстати, весьма необычно.У вас нет дальнейшего контроля над кодом?

Другие советы

Чтобы сделать это с помощью jQuery, вы можете сделать

var jscript = $('#btn1').parent().attr('href');
eval(jscript);

Это не рекомендуемый способ действий.Изменение html было бы намного лучше

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top