Как вызвать javascript из href?
как:
<a href="<script type='text/javascript'>script code</script>/">Call JavaScript</a>
Как вызвать javascript из href?
как:
<a href="<script type='text/javascript'>script code</script>/">Call JavaScript</a>
<a onClick="yourFunction(); return false;" href="fallback.html">One Way</a>
** Изменить **
Из-за шквала комментариев я разделяю ресурсы, данные/найденные.
Предыдущие SO Q и A:
Интересные чтения:
<a href="javascript:call_func();">...</a>
где функция должна вернуть false, чтобы браузер не переходил на другую страницу.
Но я бы рекомендовал использовать jQuery (с $(...).click(function () {}))
)
Правильный способ вызвать код javascript при нажатии ссылки будет заключаться в добавлении обработчика onclick
:
<a href="#" onclick="myFunction()">LinkText</a>
Хотя даже "более правильный" способ состоял бы в том, чтобы вытащить его из html вместе и добавить обработчик с другим javascript при загрузке dom.
Использование JQuery было бы хорошим;
<a href="#" id="youLink">Call JavaScript </a>
$("#yourLink").click(function(e){
//do what ever you want...
});
JavaScript-код обычно вызывается из события onclick
ссылки. Например, вы могли бы сделать следующее:
В главном разделе HTML-документа
<script type='text/javascript'>
function myFunction(){
//...script code
}
</script>
В теле документа HTML
<a href="#" id="mylink" onclick="myFunction(); return false">Call JavaScript </a>
В качестве альтернативы вы также можете присоединить свою функцию к ссылке, используя идентификатор ссылок, а также HTML DOM или структуру, такую как JQuery.
Например:
В главном разделе HTML-документа
<script type='text/javascript'>
document.getElementById("mylink").onclick = function myFunction(){ ...script code};
</script>
В теле документа HTML
<a href="#" id="mylink">Call JavaScript </a>
Я бы вообще избегал встроенного javascript, и, как я уже упоминал в своем комментарии, я бы тоже использовал <input type="button" />
для этого. Это сказано...
<a href="http://stackoverflow.com/questions/16337937/how-to-call-javascript-from-a-href" id="mylink">Link.</a>
var clickHandler = function() {
alert('Stuff happens now.');
}
if (document.addEventListener) {
document.getElementById('mylink').addEventListener('click', clickHandler, false);
} else {
document.getElementById('mylink').attachEvent('click', clickHandler);
}
другой способ:
<a href="javascript:void(0);" onclick="alert('testing')">
Если вы хотите обработать функцию, а не обработать href it self, добавьте оператор return false в конце вашей функции:
<a href="#" onclick="javascript: function() {... ; return false} return false">click</>
Изменить Это создаст ссылку с Edit после нажатия на редактирование имени функции, когда будет вызываться edit.
Не уверен, почему это сработало для меня, пока ничего не изменилось, но на всякий случай все еще смотрят...
Между головными тегами:
<script>
function myFunction() {
script code
}
</script>
Затем для <a> :
<a href='' onclick='myFunction()' > Call Function </a>