2017-09-08 43 views
1

爲什麼此功能不起作用當我點擊評分我按鈕?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

爲什麼要使用內聯JavaScript事件處理而不是使用jQuery? –

+0

@ErikPhilips它開始工作,如果我改變編號爲#號。是什麼原因? – Rohit

回答

2

在jQuery中,這是$("#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號#號。是什麼原因? – Rohit

+0

@Rohit它不是關於id,只要你正確使用它,你可以改變你喜歡的任何東西,問題是你在jquery對象上調用一個dom方法,這是不正確的。 –

+0

但它起作用,如果我改變了它 – Rohit