我有这些HTML选择

<tr>
    <td><input type="text" class="" id="total_score" value=""></td>
</tr>

<tr>
    <td>
        <select class="input1" id="" name="">
        <option value="0">0%</option>
        <option value="0.05">5%</option>
        <option value="0.10">10%</option>
        <option value="0.15">15%</option>
        <option value="0.20">20%</option>
        <option value="0.25">25%</option>
        <option value="0.30">30%</option>
        <option value="0.35">35%</option>
        <option value="0.40">40%</option>
        <option value="0.45">45%</option>
        <option value="0.50">50%</option>
        <option value="0.55">55%</option>
        <option value="0.60">60%</option>
        <option value="0.65">65%</option>
        <option value="0.70">70%</option>
        <option value="0.75">75%</option>
        <option value="0.80">80%</option>
        <option value="0.85">85%</option>
        <option value="0.90">90%</option>
        <option value="0.95">95%</option>
        <option value="1">100%</option>
        </select>
    </td>
    <td><input type="text" class="" id="score1" name="" value="0" placeholder="" readonly></td>
</tr>
<tr>
    <td>
        <select class="input2" id="" name="">
        <option value="0">0%</option>
        <option value="0.05">5%</option>
        <option value="0.10">10%</option>
        <option value="0.15">15%</option>
        <option value="0.20">20%</option>
        <option value="0.25">25%</option>
        <option value="0.30">30%</option>
        <option value="0.35">35%</option>
        <option value="0.40">40%</option>
        <option value="0.45">45%</option>
        <option value="0.50">50%</option>
        <option value="0.55">55%</option>
        <option value="0.60">60%</option>
        <option value="0.65">65%</option>
        <option value="0.70">70%</option>
        <option value="0.75">75%</option>
        <option value="0.80">80%</option>
        <option value="0.85">85%</option>
        <option value="0.90">90%</option>
        <option value="0.95">95%</option>
        <option value="1">100%</option>
        </select>
    </td>
    <td><input type="text" class="" id="score2" name="" value="0" placeholder="" readonly></td>
</tr>

我用这些值input1,input2,score1,score2计算MROUND。
var input1      = $(".input1").val();
var input2      = $(".input2").val();
var score1      = $("#score1").val();
var score2      = $("#score2").val();

var sumproduct = (parseFloat(input1) * parseFloat(score1)) + (parseFloat(input2) * parseFloat(score2));
var unit = 0.50;

var sumproduct = sumproduct.toFixed(2);

var remainder = parseFloat(sumproduct) % parseFloat(unit);
var mround = (parseFloat(remainder) < parseFloat(unit)/2) ? parseFloat(sumproduct) - parseFloat(remainder) : parseFloat(sumproduct) + (parseFloat(unit) - parseFloat(remainder));

var mround = String(mround.toFixed(2));
$('#total_score').val(mround);


// console.log(input1);
// console.log(input2);
// console.log(score1);
// console.log(score2);
// console.log(sumproduct);
// console.log(mround);

当我console.log并提醒计算值时,它看起来很好,但是当我试图在HTML输入中显示它时,它总是以1位小数代替ie 3.5。我的目标是显示3.50这样的值。这个值总是在2位小数中。
我是不是丢了什么东西?如果有人能帮助解决这个问题,我将不胜感激。
谢谢。

最佳答案

你的代码运行良好。我只是重写var sumproduct = parseFloat((input1) * (score1)) + ((input2) * (score2)).toFixed(2);
var unit = 0.50;
var sumproduct =parseFloat( sumproduct).toFixed(2);
只需重新排序代码并执行此操作parseFloat(input1).toFixed(2)

function print(){

var input1      = $(".input1").val();
var input2      = $(".input2").val();
var score1      = $("#score1").val();
var score2      = $("#score2").val();

var sumproduct = ((input1) * (score1)) + ((input2) * (score2));
var unit = 0.50;

var sumproduct =parseFloat( sumproduct).toFixed(2);

var remainder =parseFloat( (sumproduct) % (unit)).toFixed(2);
var mround = ((remainder) < (unit)/2) ? (sumproduct) - (remainder) : (sumproduct) + ((unit) - (remainder));

var mround = String(parseFloat(mround).toFixed(2));
$('#total_score').val(mround);

console.log(parseFloat(input1).toFixed(2));
console.log(parseFloat(input2).toFixed(2));
console.log(parseFloat(score1).toFixed(2));
console.log(parseFloat(score2).toFixed(2));

console.log((sumproduct));

 console.log(mround);}

<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.0/jquery.min.js"></script>
<tr>
    <td><input type="text" class="" id="total_score" value=""></td>
</tr>

<tr>
    <td>
        <select class="input1" id="" name="">
        <option value="0">0%</option>
        <option value="0.05">5%</option>
        <option value="0.10">10%</option>
        <option value="0.15">15%</option>
        <option value="0.20">20%</option>
        <option value="0.25">25%</option>
        <option value="0.30">30%</option>
        <option value="0.35">35%</option>
        <option value="0.40">40%</option>
        <option value="0.45">45%</option>
        <option value="0.50">50%</option>
        <option value="0.55">55%</option>
        <option value="0.60">60%</option>
        <option value="0.65">65%</option>
        <option value="0.70">70%</option>
        <option value="0.75">75%</option>
        <option value="0.80">80%</option>
        <option value="0.85">85%</option>
        <option value="0.90">90%</option>
        <option value="0.95">95%</option>
        <option value="1">100%</option>
        </select>
    </td>
    <td><input type="text" class="" id="score1" name="" value="0.00" placeholder="" ></td>
</tr>
<tr>

    <td>Telekom Malaysia Billing Arrears</td>
    <td>
        <select class="input2" id="" name="">
        <option value="0">0%</option>
        <option value="0.05">5%</option>
        <option value="0.10">10%</option>
        <option value="0.15">15%</option>
        <option value="0.20">20%</option>
        <option value="0.25">25%</option>
        <option value="0.30">30%</option>
        <option value="0.35">35%</option>
        <option value="0.40">40%</option>
        <option value="0.45">45%</option>
        <option value="0.50">50%</option>
        <option value="0.55">55%</option>
        <option value="0.60">60%</option>
        <option value="0.65">65%</option>
        <option value="0.70">70%</option>
        <option value="0.75">75%</option>
        <option value="0.80">80%</option>
        <option value="0.85">85%</option>
        <option value="0.90">90%</option>
        <option value="0.95">95%</option>
        <option value="1">100%</option>
        </select>
    </td>
    <td><input type="text" class="" id="score2" name="" value="0.00" placeholder="" ></td>
    <td><input type="button" onclick="print()" value="show the result"> </td>
</tr>

07-28 09:55