2016-09-23 1 views
-3

On Load zurücksetzen muss ich meine Eingangswert 5,02 erhielt, jetzt muss ich 6.onChange den Wert in jQuery

Jetzt in ändern ich bin immer entweder null oder 5.02.

Wie kann ich meine Daten erhalten ist 6 ???

Mein Code ist :::

<input type="number" id="rate" class="form-control rate " th:value="${abc.rate}" placeholder="Rate" /> 

javaScript :::

$(".rate input[type='number']").change(function() { 
    $("#rate").val(""); //i am reseting the value 
    rateForA =$('#rate').val(); //but i am getting null 
    console.log(rateForA); 
}); 
+1

* Wie kann ich bekomme meine Daten ist 6? * aber Sie haben den Wert der Eingabe in leer geändert. – Mohammad

+0

Nun, was erwarten Sie, dass es zurückkehrt, wenn Sie den Wert zurücksetzen? – epascarello

+0

Fügen Sie ein 'alert ("x") 'in das Änderungsereignis ein. Es wird nicht aktiviert, weil der Selektor falsch ist: '$ (" input [type = 'number] .rate "). Change()' - Die Eingabe hat die Klasse 'rate', nicht die übergeordnete Eingabe. –

Antwort

1

zu bekommen ich denke, das wird Ihnen helfen,

$('.rate').change(function(){ 
    var Num = parseFloat($(this).val()); 
    console.log(Math.ceil(Num)); 
}); 
1

Versuchen

$("#rate ").change(function() { //target input via ID 

     //we don't want to reset, we want to change value 

     var myNumber = parseFloat($('#rate').val()); //get decimal value 
     var result = myNumber + 0.98; //Add numbers together 

     //Or, you can round up to the nearest whole number instead of adding the numbers together 
     //Thanks to @Bilbo Baggins for this method 

     //var result = Math.ceil(myNumber); 


     console.log(result); //result should be 6 

    }); 

Wenn Sie .val, wird es den Wert als String zurückkehrt statt eine Zahl (ganze Zahl) wie diese: "5.02"

Wir brauchen sie als eine ganze Zahl wie folgt: 5,02 (ohne Anführungszeichen)

So müssen wir dann parseFloat() verwenden (da Sie Dezimalstellen in Ihrem Wert verwenden), um den Wert als eine ganze Zahl zu erhalten anstelle einer Zeichenfolge .

Wir haben dann entweder die Zahlen addieren, oder Sie können die Additionslinie zu entfernen und die Aufrundung Methode verwenden stattdessen 6.