我需要将JQuery的值放在以下范围内:
<td>Cholesterol</td>
<td>
<input type="text" name="txt_cholesterol" id="txt_cholesterol" class="info"/>
<span class="result"></span>
</td>
<td>
<span class="low">116</span>-<span class="high">254</span>
</td>
Jquery无法正常工作:
$(".info").keyup(function(){
var a = $(this).val();
var low = $(this).closest('td').next().find('.low').html();
var high =$(this).closest('td').next().find('.high').html();
if (a < parseInt(low))
{
$(this).closest('span').html('L');
}
if (a > parseInt(high))
{
$(this).closest('td').next().find('.result').html('H');
}
});
答案 0 :(得分:0)
尝试
$(this).next('span.result').html('L');
而不是
$(this).closest('span').html('L');
最近用于搜索父元素。请参阅此http://api.jquery.com/closest/
使用相同的H
答案 1 :(得分:0)
试试:
$(".info").keyup(function() {
var $this = $(this);
var $td = $this.parent('td').next();
var a = $this.val();
var low = $td.find('.low').html();
var high = $td.find('.high').html();
if (a < parseInt(low, 10)) {
$this.next().html('L');
}
if (a > parseInt(high, 10)) {
$td.find('.result').html('H');
}
});
答案 2 :(得分:0)
试试这个
$(".info").keyup(function(){
var a = $(this).val();
var low = $(this).parent().next().find('.low').html();
var high =$(this).parent().next().find('.high').html();
if (a < parseInt(low))
{
$(this).siblings('.result').html('L');
}
if (a > parseInt(high))
{
$(this).siblings('.result').html('H');
}
});
答案 3 :(得分:0)
$(".info").on('keyup', function(e) {
var self = $(this);
var a = self.val();
var low = self.parent('td').next().find('.low').html();
var high = self.parent('td').next().find('.high').html();
console.log(a, low, high, $(self).parent());
if (a < parseInt(low)) {
self.next('span').html('L');
}
if (a > parseInt(high)) {
self.next('span').html('H');
}
});