2017-09-08 15 views
1

[評価]ボタンをクリックしてこの機能が動作しないのはなぜですか? jQueryのでアンカータグでJavaScript機能が動作しないをクリック

function incrementValue(){ 
 
    var value = parseInt($("#rateme").value, 10); 
 
    value = isNaN(value) ? 0 : value; 
 
    value++; 
 
    $("#rateme").value = value; 
 
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<ul> 
 
    <li> 
 
    <a onclick="incrementValue()">Rate me</a><input type="text" id="rateme" value="50" /> 
 
    </li> 
 
</ul>

+0

関数呼び出しはokay.The問題であるかもしれません論理と私。 https://jsfiddle.net/w056zv3L/ –

+0

なぜjQueryを使用する代わりに、インラインJavaScriptイベント処理を使用しますか? –

+0

@ErikPhilipsもし私が#numberにidを変更すると動作します。理由は何ですか? – Rohit

答えて

2

、それは$("#rateme").val()ない$("#rateme").valueだ、それはDOM要素のためだのjQueryオブジェクトではありません:

function incrementValue(){ 
 
    var value = parseInt($("#rateme").val(), 10); 
 
    value = isNaN(value) ? 0 : value; 
 
    value++; 
 
    $("#rateme").val(value); 
 
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<li><a onclick="incrementValue()">Rate me</a><input type="text" id="rateme" value="50" /></li>

+0

私はIDを#numberに変更すると動作を開始します。理由は何ですか? – Rohit

+0

@Rohitこれはidに関するものではなく、正しく使用する限り、好きなものに変更することができます。問題はjqueryオブジェクトのdomメソッドを呼び出すことです。これは正しくありません。 –

+0

しかし、私がそれを変更した場合、それは動作します – Rohit

関連する問題