0
希望你能幫助我。如何在Jquery/Javascript中設置元素的初始值?jquery設置初始值
爲了解釋我的問題,我有以下代碼片段。 我的代碼片段按我的意思工作,但只能在「onclick」之後。當我加載頁面時,它不會得到正確的值。在這種情況下,我希望當我點擊「顯示每月」出現80歐元,並且點擊顯示年度出現800歐元時。但它只適用於我點擊後,而不是當我加載頁面。
感謝
//Trying to set the initial value
$(document).ready(function() {
$(".teste").ready(function() {
var initialVal = $(this).html();
if(initialVal !== "Show Monthly"){
jQuery(".amountMonth").hide();
jQuery(".amountAnnual").show();
}else{
jQuery(".amountMonth").show();
jQuery(".amountAnnual").hide();
}
});
});
//OnClick is working right
$(document).ready(function() {
$(".teste").click(function(e) {
e.preventDefault();
var initialVal = $(this).html();
if(initialVal !== "Show Monthly"){
$(".showAnnualMonthly a").text("Show Monthly");
$(".perYearMonth").text("per year");
jQuery(".monthlyOptions").hide();
$("#arrowUpDown").removeClass("icon-up-arrow-button");
$("#arrowUpDown").addClass("icon-down-arrow-button");
jQuery(".amountMonth").hide();
jQuery(".amountAnnual").show();
}
else if (initialVal !== "Show Annual"){
$(".showAnnualMonthly a").text("Show Annual");
$(".perYearMonth").text("per month");
jQuery(".monthlyOptions").show();
$("#arrowUpDown").removeClass("icon-down-arrow-button");
$("#arrowUpDown").addClass("icon-up-arrow-button");
jQuery(".amountMonth").show();
jQuery(".amountAnnual").hide();
}
});
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<p class="amount amountAnnual" style="display:none">Annual --> 600€</p>
<p class="amount amountMonth" style="dispay:none">Monthly--> 60€</p>
<p class="showAnnualMonthly" id="showMonthlyOpt">
<a href="" style="border:0; text-decoration:none;" class="teste">Show Monthly
<div class="row">
<span id="arrowUpDown" class="icon-down-arrow-button changeArrow" style="color: rgba(0, 161, 204, 1); margin-bottom:30px; font-size:36px;"></span>
</div>
</a>
</p>
嗨,感謝您的時間,是的你是對的,我做到了這一點,以更好地展示我的問題。但是結合它們,實際上它沒有區別。 「p」元素已被隱藏(html中的「display:none」)。我無法獲得初始值(在頁面加載)正確。 – grcoder
看到這個:https://gist.github.com/calebsander/ac7271768a8fc76a4ff45c10aeef6660 – csander
啊! 「** $(」。teste「)。html(); **」所以這是個問題。它以這種方式工作。但是,如果它指的是「.teste」,那麼爲什麼「this」不起作用仍然不太明白。無論如何,我會肯定的研究。 **非常感謝您的時間。 :)** – grcoder