gpt4 book ai didi

javascript - jquery 字符串和逻辑或

转载 作者:行者123 更新时间:2023-11-30 17:58:34 24 4
gpt4 key购买 nike

下面几行代码有什么问题...

它一直提示系统错误..之类的

if( (radioval === "undefined")  || (radioval === null) || (radioval === "null") ) { 

行动中的完整条件

if($('#digitallogin').is(":checked")){
var radioval = $("input[name=certificateradio]:checked").val();//its giving the string "user"
if( (radioval === "undefined") || (radioval === null) || (radioval === "null") ) { //this line
$("#login_error").text("please select the signin certificate");
return false;
}

}

enter image description here

感谢您的帮助。

最佳答案

您的代码中没有语法错误。如果代码有语法错误,Firebug 控制台(不是 Watch 面板)中会出现错误消息,并且代码根本不会运行。您永远不会到达断点。

您的屏幕截图中的语法错误在您的watch 表达式中。删除监视表达式,那些错误消息就会消失。

在您更新的屏幕截图中,我可以看到语法错误是什么。仔细查看您的 watch 表达式(在此处重新格式化以避免滚动):

if(
(radioval === "undefined") ||
(radioval === null) ||
(radioval === "null")
)

那不是表达式,而是 if 语句。如果您想将它用作监视表达式,您只需要 inside if 语句中的表达式。也就是说,删除 if( 和最后的 )

关于您正在进行的特定测试,如果没有选择任何元素,jQuery 的 .val() 方法会返回 undefined。请注意,jQuery 文档中有一个错误:它说 .val() 在没有匹配元素时返回 null。这是不正确的;在这种情况下,它返回 undefined。这是 the line of code in the jQuery source返回 undefined(因为它是一个没有值的简单 return;)。

但那是 undefined 值,而不是字符串 "undefined"。您可以使用 radioval === undefined 对此进行测试。或者您可以使用 radioval == null。注意 == 而不是 ===;此测试匹配 nullundefined 值。这可能是最安全的选择,以防 jQuery 团队决定更改代码以匹配文档并开始返回 null 而不是 undefined。 (不太可能,但你永远不知道。)通过测试 radioval == null,它会针对任一值进行测试。

关于javascript - jquery 字符串和逻辑或,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17609565/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com