簡體   English   中英

使用參數創建鏈接標簽

[英]Creating a link tag with parameters

嗨,我有一個鏈接標記,我是用javascript創建的。 現在我想像下面的example。一樣將參數附加到該鏈接,以便當用戶單擊該按鈕時,它應該與參數一起轉到該網址

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

我將這個數據標簽附加到其他元素上。 現在,我可以致電/ order / product了。 但是當我也給id時,它也會給出錯誤“缺少參數”! 誰能幫幫我嗎?

您必須取消引用變量所在位置的字符串

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上都可以)。

為了使編寫和閱讀(以及調試)更加容易,我建議使用以下變體來組織代碼:

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語句顯示多行時,請遵循最佳做法:

     var a = smth1, b = smth2; 

因此,僅通過查看此代碼,您就可以更容易理解這是變量聲明的代碼塊

為了便於創建鏈接,您可以使用String方法link(str)

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

您只需要刪除ID中的引號

就像下面

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

如果您在引號內包含id,則表示它將以字符串形式而不是變量名,因此只需刪除引號即可。 會工作的

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM