jQuery在输入字段中不起作用

时间:2015-08-17 11:38:21

标签: jquery html

我想将值保存到db中,我们计算所谓的总和和总数。我想在输入字段中计算它。我试过了。但是不起作用。 因为我意识到问题来自行中的 if let results = self.result { // this will verify if your self.result is a non-nil array of object // if it has a value then it will be passed to results // you can now safely proceed on saving your objects PFObject.saveAllInBackground(results, block: { (succeeded, error) -> Void in // additional code if succeeded { // alert, remove hud ...... }else{ if let reqError = error { println(reqError.localizedDescription) } } }) } “text”和行中的$('.multTotal',this).text(total);和“text”。 你可以帮帮我吗

查看

$("#grandTotal").text(mult);

的jQuery

    <table class="table" id="boq_tbl">
        <thead>

       <thead>

            <tbody>
    <tr class="txtMult">

                <td><input type="text" name="work_product_id" class="form-control" id="work_product_id" placeholder=""></td>
    <td><input type="text" name="cost_code" class="form-control" id="cost_code" placeholder=""></td>
    <td><input type="text" name="work_item_description" class="form-control" id="work_item_description" placeholder=""></td>
    <td><input type="text" name="quentity" id="" class="form-control val1" /></td>
    <td><input type="text" name="unit" class="form-control val2"/></td>
    <td><input type="text" name="laboure_hrs" id="" class="form-control val3" /></td>
    <td><input type="text"name="laboure_cost" id="" class="form-control val4"/></td>
    <td><input type="text" name="others" class="form-control" id="others" placeholder=""></td>


        <td>
                <span class="multTotal">0.00</span>
        </td>
    </tr>

     </tbody>
       </table> 
<p align="right">
    Grand Total# <span id="grandTotal">0.00</span>
</p>

3 个答案:

答案 0 :(得分:2)

我认为此代码的一个问题是使用。而不是#贯穿。例如,

  var val1 = $('.val1', this).val();

应该阅读

  var val1 = $('#val1', this).val();

还有很多其他的例子。 “”用于课程,“#”用于id。

答案 1 :(得分:1)

请尝试此

function multInputs() {
    var mult = 0;
    $("tr.txtMult").each(function () {
        var val1 = $('#val1', this).val();
        var val2 = $('#val2', this).val();
        var val3 = $('#val3', this).val();
        var val4 = $('#val4', this).val();
        var total = (parseInt(val1) * parseInt(val2) ) + (parseInt(val3) * parseInt(val4));
        $('.multTotal',this).text(total);
        mult += total;
        $('#txtmultTotal').val(mult);
    });
    $("#grandTotal").text(mult);
    $('#txtgrandTotal').val(mult);
}

代码中的问题:

`val1,va12,val3,val4` 

不是阶级,它是Id。所以你应该像$('#val1', this).val();一样写$('.val1', this).val();

您应该使用parseInt()将值转换为整数。

DEMO

答案 2 :(得分:0)

如上所述,将您的“课程”名称更改为“id”特定,并调用:

 $("#boq_tbl").on("keyup", ".txtMult input", multInputs);
 

DOM准备就绪后的

方法

$(document).ready(function(){
     $("#boq_tbl").on( "keyup" , ".txtMult input" , multInputs );
});