سؤال

كيف يمكنني استرداد مكالمة JavaScript في علامة مرساة أدناه في JS أو JQUERY؟ أرغب في الأساس في الحصول على الرمز ("جافا سكريبت: 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