Я хочу передать параметр url через html dom. Это javascript, который я использую
<script>
function myFunction(url)
{
setTimeout(function(){window.location.assign(url)},4000);
}
</script>
HTML
<a href="#" onclick="myFunction(http://stackoverflow.com)"> Click here </a>
Но это не работает. Как я могу исправить эту ситуацию? Спасибо за ваши ответы.
Используйте комбинацию одиночных и двойных quotes
, чтобы передать url
как строковый литерал. Если URL-адрес не заключен в кавычки, он рассматривается как некоторая variable
и javascript может его найти.
<a href="#" onclick="myFunction('http://stackoverflow.com')"> Click here </a>
что сказал @Adil:
<a href="#" onclick="myFunction('http://stackoverflow.com')"> Click here </a>
но если вы хотите передать URL-адрес в качестве параметра, не забудьте изменить свою функцию следующим образом:
function myFunction(url)
{
setTimeout(function(){window.location.assign(encodeURIComponent(url)},4000);
}
Поскольку @Adil говорит, вам нужно передать аргумент как строку функции. В способе, которым вы пытаетесь, скрипт пытается восстановить значение переменной http://stackoverflow.com
.