2016-08-10 68 views
0

我使用下面的代碼根據用戶的選擇計算名片的價值。用戶使用單選按鈕自定義選項,然後使用選中的單選按鈕的值計算淨價,增值稅和總價。這些值然後顯示在一個div中。默認情況下會選擇單選按鈕,但只有用戶單擊其中一個單選按鈕後纔會顯示價格。由於選擇了默認選項,當頁面加載時如何顯示與這些選項相對應的價格?如何根據默認選擇顯示jQuery計算結果

$(document).ready(function() { 

    $('input[form="businessCards"]').click(function() { 


    var totalNetPrice = designLayoutPrice + printRunPrice + printedSidesPrice + paperWeightPrice + refiningPrice + processingPrice + deliveryMethodPrice; 
    $(".totalNetPrice").html(totalNetPrice.toFixed(2)); 

    var vat = totalNetPrice * 0.14; 
    $(".vat").html(vat.toFixed(2)); 

    var totalPrice = totalNetPrice + vat; 
    $(".totalPrice").html(totalPrice.toFixed(2)); 

    }); 

}); 

我試着添加下面的內容,但確實有效。

$(document).ready(function() { 

    // display default option values 
    $(".totalNetPrice").html.(totalNetPrice); 
    $(".vat").html.(vat); 
    $(".totalPrice").html.(totalPrice); 

    $('input[form="businessCards"]').click(function() { 


    var totalNetPrice = designLayoutPrice + printRunPrice + printedSidesPrice + paperWeightPrice + refiningPrice + processingPrice + deliveryMethodPrice; 
    $(".totalNetPrice").html(totalNetPrice.toFixed(2)); 

    var vat = totalNetPrice * 0.14; 
    $(".vat").html(vat.toFixed(2)); 

    var totalPrice = totalNetPrice + vat; 
    $(".totalPrice").html(totalPrice.toFixed(2)); 

    }); 

}); 
+0

你能告訴我們html,所以它更容易調試嗎?另外'.html。(totalPrice)'和'.html。(totalNetPrice)' - 我認爲你希望它沒有中間的點,即'.html(totalPrice)'和'.html(totalNetPrice)'。 – AgataB

+2

您可以嘗試調用'$('input [form =「businessCards」]')。trigger(「click」);'在$(documnet).ready'內代碼的底部。 – vijayP

回答

1

您可以手動觸發點擊事件,以便使用默認值計算價格。

$(document).ready(function() { 

    $('input[form="businessCards"]').click(function() { 


    var totalNetPrice = designLayoutPrice + printRunPrice + printedSidesPrice + paperWeightPrice + refiningPrice + processingPrice + deliveryMethodPrice; 
    $(".totalNetPrice").html(totalNetPrice.toFixed(2)); 

    var vat = totalNetPrice * 0.14; 
    $(".vat").html(vat.toFixed(2)); 

    var totalPrice = totalNetPrice + vat; 
    $(".totalPrice").html(totalPrice.toFixed(2)); 

    }).click(); // trigger event 

}); 
+0

此解決方案應該可以正常工作。您還可以創建一個函數,通過點擊函數中的步驟計算總價格,並可以將其稱爲「onClick」和文檔加載。 –

+0

我已經創建了jsfiddle [這裏](https://jsfiddle.net/imonareng/DTcHh/23529/)。如果我按照建議手動觸發點擊事件,則默認選項現在成爲每個選項類別下的最後一個選項。默認選項的總價值應該是R1162.80。當我添加.click()時,總值現在變成R2086.20,現在檢查最後一個選項。 –

+0

我設法修復它。我添加了$('input [form =「businessCards」]:checked')。trigger(「click」);在@vijayP建議的最底層代碼 –