Javascript 如果文本框值匹配,则将特定标签文本设置为“是”,否则为“否”

Javascript 如果文本框值匹配,则将特定标签文本设置为“是”,否则为“否”,javascript,jquery,Javascript,Jquery,我正在尝试检查标签文本是否与文本框匹配如果匹配,则将特定标签文本设置为“是”或“否”,但在我的代码中,我不确定有什么问题,但这不会发生,因为它本身显示“否” HTML this.text将在fn中未定义,因为this是一个DOM节点,并且它没有text属性 您可以将其包装为jQuery对象,并使用text()方法: var fn = function() { return $(this).text() === master ? "yes" : "noo"; } 此.text将在fn中

我正在尝试检查标签文本是否与文本框匹配如果匹配,则将特定标签文本设置为“是”或“否”,但在我的代码中,我不确定有什么问题,但这不会发生,因为它本身显示“否”

HTML


this.text
将在
fn
未定义,因为
this
是一个DOM节点,并且它没有
text
属性

您可以将其包装为jQuery对象,并使用
text()
方法:

var fn = function() {
    return $(this).text() === master ? "yes" : "noo";
}

此.text
将在
fn
未定义,因为
是一个DOM节点,并且它没有
text
属性

您可以将其包装为jQuery对象,并使用
text()
方法:

var fn = function() {
    return $(this).text() === master ? "yes" : "noo";
}

您可以将代码简化如下,回调函数中的第二个参数引用旧的文本值。您可以使用在jQuery中获取值。
var val=$('input.master').val();
$('.user_label').text(函数(i,text){
return val==文本“是”:“否”;
})

1.
0

1
您可以按如下方式简化代码,回调函数中的第二个参数引用旧的文本值。您可以使用在jQuery中获取值。
var val=$('input.master').val();
$('.user_label').text(函数(i,text){
return val==文本“是”:“否”;
})

1.
0
1
当fn传递到$('label.user_label').text(fn)时,上下文已更改,但此.text仍未定义。使用this.textContent、this.innerHTML、$(this.text())

使用文本进行比较,然后对其进行修改,这会使逻辑变得奇怪,应该是这样吗

$(函数(){
$('input.master').keyup(函数(){
var master=$(this).val();//获取主值
var fn=函数(){
返回$(this.attr('data-val')==master?“是”:“noo”;//如果当前文本框与master匹配,则为yes,否则为no
};
$('label.user_label').text(fn);//循环并替换每个用户输入的文本
});
});

当fn传递到$('label.user_label').text(fn)时,上下文已更改,但此.text仍未定义。使用this.textContent、this.innerHTML、$(this.text())

使用文本进行比较,然后对其进行修改,这会使逻辑变得奇怪,应该是这样吗

$(函数(){
$('input.master').keyup(函数(){
var master=$(this).val();//获取主值
var fn=函数(){
返回$(this.attr('data-val')==master?“是”:“noo”;//如果当前文本框与master匹配,则为yes,否则为no
};
$('label.user_label').text(fn);//循环并替换每个用户输入的文本
});
});

var fn = function() {
    return $(this).text() === master ? "yes" : "noo";
}
$(function() {
    var master = $('input.master').get(0).value; // get the master value

    $('label.user_label').each(function(){
      if($(this).text() === master){
        $(this).text("yes");
      }else{
        $(this).text("no");
      }
    });


});