2013-10-16 108 views
0

如何使用jQuery/javascript進行這些計算?jQuery/JavaScript計算

想在結果DIV標籤

高*寬*的計算,可見厚*密度

<input type="text" id="hojd" /> * <input type="text" id="bredd" /> * <input type="text" id="tjock" /> * 

<select name="density" id="select"> 
    <option value="2,4">concrete</option> 
    <option value="2,5">rock</option> 
</select> 
<br /> 

<div id="result"></div> 
+3

你在試着做什麼。請詳細說明 –

+0

編寫一個函數,將大小輸入和密度輸入讀入變量,計算質量,並將其寫入結果div。從每個輸入的'change'事件處理函數調用該函數,包括select。您可能需要使用'2.4'作爲密度而不是'2,4' – Plato

+1

您還可能需要添加提交按鈕,以便知道何時讀取字段。 –

回答

0

如果更改選擇列表小數點逗號下面的代碼將工作(JavaScript的可能承擔小數點分隔符的使用點)。此文件不包含任何值的驗證,我將離開你自己做;)

function calc() { 
    var height = $('#hojd').val(); 
    var width = $('#bredd').val(); 
    var thick = $('#tjock').val(); 
    var density = $('#select').val(); 

    $('#result').html(height * width * thick * density); 
} 

$(function() { 
    $('#hojd, #bredd, #tjock, #select').change(calc); 
}); 

編輯:

這裏有一個工作的jsfiddle。 http://jsfiddle.net/84Hvr/2/

+0

''parseInt()'將刪除任何小數點,並且它不是乘法所需的;) – Archer

+0

好吧,發現了。我已經更新了我的答案。 –

+0

讓我自己看起來很傻,並說你從不*需要將字符串轉換爲數字,然後有人指出'a + b',這讓我感到新鮮。我覺得我以前從未見過電腦! :p – Archer

0

嘗試是這樣的:

var output = $('#hojd').val() * $('#bredd').val() * $('#tjock').val() * $('#select').val(); 

雖然,我'd分配一個比'select'更好的ID名稱到下拉列表中。 。 。

然後

$('#result').html(output);