如何查找 id 元素的文本值

How do i find the text value of a id element?

本文关键字:元素 文本 id 何查找 查找      更新时间:2023-09-26

我正在尝试禁用提交按钮,直到返回user_name和电子邮件检查,这有效,但我不希望它继续并在出现错误时显示提交按钮。 即用户名/电子邮件已经存在!

我一直在尝试从表单中的id="livesearchEmail"中检索我的错误值。如果它很清楚,即没有错误,那么我希望按钮变为活动状态!我所拥有的看起来足够直截了当,但它不起作用!我错过了什么?

我一直在尝试从 #livesearchEmail 返回值,但无济于事。

任何帮助或指向正确方向的点都将不胜感激!

<div id="livesearchEmail" class="livesearchEmail"></div>
<script type="text/javascript">  
    $(document).ready(function() {    
        $('input[id="registerButton"]').attr('disabled','disabled');
        $('input[type="text"]').keyup(function() {
        if ($('#user_name').val() != "" && $('#email').val() != "") {
            if ($("#livesearchEmail") == ''){
                $('input[id="registerButton"]').removeAttr('disabled');
            }
        }
        });        
    });​​
</script>  

假设您尝试获取的数据位于 DOM 元素(如

)中,而不是您可以执行的表单元素:
if ($("#livesearchEmail")[0].innerHTML === '')

或者如果你想保留它jQuery,我认为你可以使用text()函数:
if ($("#livesearchEmail").text() === '')

另外,请注意,我正在使用三重等于来防止错误评估。

jQuery ID Selector ("#id")

因为 ID 是唯一的,所以你不需要构造一个带有标签和所有东西的特殊选择器。例如,您可以简单地将 this: $('input[id="registerButton"]') 转换为 this: $("#registerButton")

我不太确定为什么要检查是否没有返回错误,因为如果您检查该按钮,该按钮将永远不会处于活动状态。但是,根据您的要求,此jQuery代码将为您工作:

$(document).ready(function() {    
    $("#registerButton").attr('disabled','disabled');
    $('input[type="text"]').keyup(function() {
    if ($('#user_name').val() && $('#email').val() && (!$("#livesearchEmail").length || !$("#livesearchEmail").text())) {
        $("#registerButton").removeAttr('disabled');
    }
    });        
});

尝试使用 $("#livesearchEmail").text();


编辑 - 添加的代码

$(document).ready(function() {  
     $('input[id="registerButton"]').attr('disabled','disabled');
     $('input[type="text"]').keyup(function() {
        if($('#user_name').val() != "" && $('#email').val() != ""){
            if ($("#livesearchEmail").text() == ""){
                $('input[id="registerButton"]').removeAttr('disabled');
            }
        }
     });  
 });