簡體   English   中英

使用 JavaScript 更改錨鏈接屬性的一部分

[英]Change part of an anchor link attribute with JavaScript

當單擊正確的單選按鈕時,我正在嘗試更改 URL 的中間部分。

在三個購買鏈接中,每一個都代表一個金額。 我將選擇一種動物,然后單擊我想花費的 3 個金額中的 1 個。 我將如何更改所有 3 個 URL 的一部分?

我怎么能 go 這樣做呢? 這些是單選按鈕(使用 JavaScript):

<input type="radio" name="orderID" 
    value="-DOL&linkID=naib&url=https%3A//example.com/List%3FlinkID%3Dnaib"
    onclick="document.getElementById('editBTN').href=this.value">
    Dolphin
</input>
<input type="radio" name="orderID" 
    value="-SHK&linkID=naib&url=https%3A//example.com/List%3FlinkID%3Dnaib"
    onclick="document.getElementById('editBTN').href=""+this.value">
    Shark
</input>

以及購買鏈接(分別為 250 美元、100 美元和 50 美元):

<a id="editBTN" href="http://example.com/Info?ticketCode=%XX%3A%Q250">Purchase</a>
<a id="editBTN" href="http://example.com/Info?ticketCode=%XX%3A%Q100">Purchase</a>
<a id="editBTN" href="http://example.com/Info?ticketCode=%XX%3A%Q50">Purchase</a>

DOL部分是唯一需要更改的部分。

如果您要將按鈕上的 Id 重命名為唯一,請制作 function:

<script type="text/javascript">
    function setAnimal(obj) {
        var baseURL="http://ev8.evenue.net/cgi-bin/ncommerce3/SEGetEventInfo?ticketCode=%3ANAIB%3A%3AAQ";
        document.getElementById('editBTN1').href=baseURL+"250&"+obj.value;
        document.getElementById('editBTN2').href=baseURL+"100&"+obj.value;
        document.getElementById('editBTN3').href=baseURL+"50&"+obj.value;
    }
</script>

然后,在單選按鈕上執行:

onclick="setAnimal(this);"
onclick="document.getElementById('editBTN').href='http://ev8.evenue.net/cgi-bin/ncommerce3/SEGetEventInfo?ticketCode=%3ANAIB%3A%3AAQ250'+this.value;"

沒有中間部分,使用正則表達式,將字符串剪切並使用您想要的。 改變它很容易:

var edBTN = getElementById('editBTN');
edBTN.setAttribute('href', mynewurl);

使用 jquery 或其他 dom 解析庫,這應該是可能的。

if ( /* radio selected */ ) {

    // Go get your src attrib
    var src = jQuery( 'selectorforanchortag' ).attr('src');
    // Manipulate the src however you need using javascript string methods
    src = src.blergetyblerg();
    // Put your new src back where orig was
    jQuery( 'selectorforanchortag' ).attr('src');

}
onclick="javascript:document.getElementById('editBTN').href=this.value">

暫無
暫無

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

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