选择更改href和文本

时间:2017-10-01 00:12:48

标签: javascript jquery html whmcs

当用户从下拉菜单中选择正常工作时,我正在尝试更改价格和href。

现在我想在页面的某处更改文字。

更改此处所需的文字

<div class="price">
    <strong id="OrderLinkOne">2.00</strong>
    <span>per month</span>
</div>

我也在使用PHP函数使其更具动态性,是函数

$product_id1        =   5;
$product_id2        =   6;
$product_id3        =   7;
$product_id4        =   8;
$tenure             =   12;

function SelectValue($price, $pid, $billingcycle){
    $link ="http://project.dev/cart.php?a=add&pid=".$pid."&billingcycle="; // LIVE

    if( $billingcycle == "1"  ){
        echo '<option value="'.$link.'monthly">1 Month at $'.$price.'/month</option>';
    }

    if( $billingcycle == "3"  ){
        echo '<option value="'.$link.'quarterly">3 Months at $'.$price.'/month</option>';
    }

    if( $billingcycle == "6"  ){
        echo '<option value="'.$link.'semiannually">6 Months at $'.$price.'/month</option>';
    }

    if( $billingcycle == "12"  ){
        echo '<option value="'.$link.'annually">12 Months at $'.$price.'/month</option>';
    }

    if( $billingcycle == "24"  ){
        echo '<option value="'.$link.'biennially">24 Months at $'.$price.'/month</option>';
    }

    if( $billingcycle == "36"  ){
        echo '<option selected="selected" value="'.$link.'triennially">36 Months at $'.$price.'/month</option>';
    }

}

function SelectPrice($HTMLID, $pid, $billingcycle){
    $link ="http://project.dev/cart.php?a=add&pid=".$pid."&billingcycle="; // LIVE

    if( $billingcycle == "1"  ){
        echo '<a id="'.$HTMLID.'" href="'.$link.'monthly">Buy Now</a>';
    }

    if( $billingcycle == "3"  ){
        echo '<a id="'.$HTMLID.'" href="'.$link.'quarterly">Buy Now</a>';
    }

    if( $billingcycle == "6"  ){
        echo '<a id="'.$HTMLID.'" href="'.$link.'semiannually">Buy Now</a>';
    }

    if( $billingcycle == "12"  ){
        echo '<a id="'.$HTMLID.'" href="'.$link.'annually">Buy Now</a>';
    }

    if( $billingcycle == "24"  ){
        echo '<a id="'.$HTMLID.'" href="'.$link.'biennially">Buy Now</a>';
    }

    if( $billingcycle == "36"  ){
        echo '<a id="'.$HTMLID.'" href="'.$link.'triennially">Buy Now</a>';
    }
}

我的JS:

$(document).ready(function(){
  $("#planOne").change(function () {
    console.log(this.value);
    $("#OrderLinkOne").attr('href', this.value);
  });
});

HTML

<div class="select-tenure">
    <select id="planOne">
        <?php echo SelectValue("2.08", $product_id1, 12);?>
        <?php echo SelectValue("2.00", $product_id1, 24);?>
        <?php echo SelectValue("2.00", $product_id1, 36);?>
    </select>
</div>

<div class="link">
    <?php echo SelectPrice("OrderLinkOne", $product_id1, 36);?>
</div>

当我从下拉列表更改时,链接正常运行,但我想仅更改.price类下的价格,因此请提供一个解决方案,如何只显示价格而不是选项的完整价值......

2 个答案:

答案 0 :(得分:1)

这就是你需要的。

$(".price").children("strong").text("3.00"); //change the value 2.00

$("span").text("per week"); // change the text within the span

您可以使用ifswitch根据用户选择更改值。

&#13;
&#13;
$(document).ready(function(){
  $("#planOne").change(function () {
    console.log(this.value);
    $("#OrderLinkOne").attr('href', this.value);
    $(".price").children("strong").text("3.00");
    $("span").text("per week");
  });
});
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="price">
    <strong>2.00</strong>
    <span>per month</span>
</div>

<select id="planOne">
  <option value="google.com">Google</option>
  <option value="microsoft.com">Microsoft</option>
  <option value="yahoo.com">Yahoo</option>
</select>
<a id="OrderLinkOne" href="google.com">Link</a>
&#13;
&#13;
&#13;

答案 1 :(得分:0)

好的简单解决方案,您可以编写如下代码:

$(document).ready(function(){
  $("#planOne").change(function () {
    console.log(this.value);
    $("#OrderLinkOne").attr('href', this.value);
    $("#PriceOne").html('1000'); // you can turn this interger in what you want
  });
});

现在您可以在所需的每个整数中更改价格。