使用参数创建链接标记

时间:2017-04-15 08:21:45

标签: javascript jquery

您好我有一个我用javascript创建的链接标记。现在我想将一个参数附加到该链接,就像下面的例子一样。当用户点击该按钮时,它应该与参数一起转到该URL

var id="123456789";
var data = '<a href="/order/product/ + id"> click</a>' ;

这个数据标签我追加到其他一些元素。 现在我可以打电话/订购/产品。但是,当我给id也是错误的“缺少参数”!  有人可以帮帮我吗?

4 个答案:

答案 0 :(得分:4)

你必须取消引用变量所在的字符串

var id   = "123456789";
var data = '<a href="/order/product/' + id + '"> click</a>' ;

或者支持ES2015 +模板文字的最新JavaScript引擎:

var id   = "123456789";
var data = `<a href="/order/product/${id}"> click</a>`;

但这不适用于任何版本的IE(在Edge上)。

答案 1 :(得分:1)

为了便于编写和阅读(以及调试),我推荐以下如何组织代码的变体:

var id = "1234566",
    // It is more understandable now that hrefLink contains id concatenated with some other string
    hrefLink = "/order/product/" + id,
    link = document.createElemen('a');
link.href = hrefLink;

以这种方式你

  1. 查看变量意味着什么
  2. 控制hrefLink包含的内容
  3. 请使用var语句代替多行代替最佳做法,明确&#34;显示&#34;声明部分是:

    var a = smth1,
        b = smth2;
    
  4. 因此,只需查看此代码,您就可以更轻松地理解这是变量声明的代码块

答案 2 :(得分:1)

为了便于创建链接,您可以使用link(str)的方法String

var id="123456789";
var linkText = " click";
var href = "/order/product/" + id;
var data = linkText.link(href);
alert(data);

答案 3 :(得分:0)

您只需删除ID

中的引号即可

就像下面的

var id="123456789";
var data = '<a href="/order/product/' + id  +'"> click</a>' ;

如果你在引号内有id意味着它将字符串而不是变量名称,所以只需删除引号。它会起作用