2013-02-19 50 views
0

我有一個用於輸入數字的文本字段。我想提醒我輸入到文本字段中的數字。我的HTML是:文本字段中的警報字段值

<input id="search_number" type="text" name="numbers" /> 
<button id="wmsearch">Search</button> 

和JS是:

var sn = ($('#search_number').val()); 
$('#wmsearch').click(function(){ 
if(sn != 1234567890){ 
alert(sn); 
}else 
{ 
alert('equal'); 
} 
}); 

它不工作...

回答

0

你必須在click事件處理程序來獲取$('#search_number')val()

$('#wmsearch').click(function() { 
    var sn = $('#search_number').val(); 

    if(sn != 1234567890) { 
     alert(sn); 
    } else { 
     alert('equal'); 
    } 
}); 
0

試試這個

$('#wmsearch').click(function(){ 
    var sn = $('#search_number').val();//you don't need extra bracket here 
    if(sn != 1234567890){ 
     alert(sn); 
    }else 
    { 
     alert('equal'); 
    } 
    }); 
0

試試這個:

$('#wmsearch').click(function() { 
    var sn = $('#search_number').val(); 
    if (sn != 1234567890) { 
     alert(sn); 
    } else { 
     alert('equal'); 
    } 
}); 
0

你可以把jQuery的對象#search_numberclick事件處理程序,但進入它裏面的值。這樣做可以節省每次點擊一次DOM調用。

此外,不要忘記使用parseInt將字符串解析爲整數。

var $search_number = $('#search_number'); 
$('#wmsearch').click(function(){ 
    var sn = parseInt($search_number.val(), 10); 

    if(sn != 1234567890){ 
     alert(sn); 
    } else { 
     alert('equal'); 
    } 
}); 

說了這麼多,你可以通過使用?: conditional operator簡化腳本。

var $search_number = $('#search_number'); 
$('#wmsearch').click(function(){ 
    var sn = parseInt($search_number.val(), 10); 
    alert((sn == 1234567890) ? "equal" : sn); 
}); 

See a live example here.