0

我在 html 链接中添加 js 变量时遇到问题,我认为我的语法错误,因为它没有将变量的内容添加到链接字符串中。

这是我正在尝试的:

href="http://www.facebook.com/sharer.php?u='+url+'">

我在哪里错了?

4

6 回答 6

2

这是不可能的:)。您必须一直使用javascript,例如:

href="javascript: document.location='http://www.facebook.com/sharer.php?u=' + url;"
于 2012-09-25T13:56:29.607 回答
0

您正试图将 HTML 视为 JavaScript。你不能只是跳进跳出两种语言。

如果要修改现有链接,则需要使用 DOM Manipulation。这是W3C 托管的JavaScript 简介的一部分。

于 2012-09-25T13:57:07.297 回答
0

你不能那样做。您将需要像这样使用javascript:

...在<head>标签内...

<script type="text/javascript">
window.onload = function() {
    document.getElementById('myLink').href = "http://www.facebook.com/sharer.php?u="+url;
}
</script>

...在<body>标签内...

<a id="myLink" />
于 2012-09-25T13:57:27.733 回答
0

您需要在字符串之外才能连接您的 URL。

在这种情况下,您的字符串是使用双引号创建的,但是您试图通过使用单引号来打破字符串。

我在这里假设 html 是一个 Javascript 变量,它可能不是:

var href = "http://www.facebook.com/sharer.php?u=" + url + ">";
于 2012-09-25T13:58:02.723 回答
0
document.ready(function(){
  var url = "yahoo.com" ; 
   $("#linkid").setAttribute("href",url) ;
}) ;

当浏览器加载所有元素时, document.ready执行设置锚标记的 href 属性的方法。

所以你有一个像这样的锚标签:

<a id="linkid"/> 

$("#linkid")获取锚标记元素,而 setAttribute("href", url) 将链接设置为您的 href 属性。希望这是有道理的。

于 2012-09-25T13:58:29.167 回答
0

我不认为你可以像这样在 href 中添加一个 javascript 变量。试试这个:

<a href="javascript:void(0);" onclick="window.location.href = 'http://www.facebook.com/sharer.php?u=' + url">Foo</a>
于 2012-09-25T14:00:43.380 回答