Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/69.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如果不是jquery,为什么不工作?_Jquery_If Statement - Fatal编程技术网

如果不是jquery,为什么不工作?

如果不是jquery,为什么不工作?,jquery,if-statement,Jquery,If Statement,在下面的函数中,它通过if和else,这是为什么 function test(){ $(".notEmpty").each(function() { if($(this).val() === ""){ alert("Empty Fields!!"); return; } else{ AddRow_OnButtonClick('tblMedica

在下面的函数中,它通过if和else,这是为什么

function test(){
        $(".notEmpty").each(function() {
         if($(this).val() === ""){
            alert("Empty Fields!!");
            return;
           }
         else{
                AddRow_OnButtonClick('tblMedicationDetail',6);
              }
     });

}
在jquery上是否有我不知道的if和else语句

AddRow_OnButtonClick是一个函数,用于添加包含6个文本框的新行,我将附加一个类名“notEmpty”。如果任何文本框为空,则不应调用函数AddRow_OnButtonClick,并应弹出警报

我不知道我做错了什么


谢谢

我对您的代码进行了结构化处理,使其更具可读性,但我不确定为什么同时调用if和else:

function test(){
    $(".notEmpty").each(function() {
        if($(this).val() === ""){
            alert("Empty Fields!!");
            return;
        } else {
            AddRow_OnButtonClick("tblMedicationDetail",6);
        }
    });
}

我已经对您的代码进行了结构化,使其更具可读性,但我不确定为什么同时调用if和else:

function test(){
    $(".notEmpty").each(function() {
        if($(this).val() === ""){
            alert("Empty Fields!!");
            return;
        } else {
            AddRow_OnButtonClick("tblMedicationDetail",6);
        }
    });
}

return
语句仅从提供给
的函数中返回。我怀疑您遇到的问题是希望从
test()
返回。实际上,在从内部函数返回后,仍然会将内部函数应用于其余元素


如果我是对的,并且您希望完全打破
.each()
,请将
返回false
改为()。我怀疑您遇到的问题是希望从
test()
返回。实际上,在从内部函数返回后,仍然会将内部函数应用于其余元素


如果我是对的,并且你想突破
。每个()
一起,把
返回false
改为()

var emptyFields = false;

function test(){
    emptyFields = false;
    $(".notEmpty").each(function() {
        if($.trim($(this).val()) == "") {
            emptyFields = true;
            return false; // break out of the each-loop
        } 
    });
    if (emptyFields) {
        alert("Empty Fields!!");
    } else {
        AddRow_OnButtonClick("tblMedicationDetail",6);
    }
}

基本思想是,您需要使用
。每次
调用仅确定字段是否为空。在此之后,您可以使用
if-else
语句来处理信息。

将现有的两个答案结合起来,使我相信这会起作用:

var emptyFields = false;

function test(){
    emptyFields = false;
    $(".notEmpty").each(function() {
        if($.trim($(this).val()) == "") {
            emptyFields = true;
            return false; // break out of the each-loop
        } 
    });
    if (emptyFields) {
        alert("Empty Fields!!");
    } else {
        AddRow_OnButtonClick("tblMedicationDetail",6);
    }
}
if($(this).val() == ""){
基本思想是,您需要使用
。每次
调用仅确定字段是否为空。在此之后,您可以使用
if-else
语句处理信息

if($(this).val() == ""){
2等号不是3-这可能是你的问题


2等号不是3-这可能是你的问题…?

告诉我这是一个博宾斯启发的笑话问题;它是否对每一行都执行
if
else
(它是否对每一行都发出“空字段!!”警报并运行
AddRow\u onbutton单击
)?您所说的“它执行if和else”是什么意思,它实际上是如何运行的?很抱歉,我添加了更多关于该函数将要执行的操作的细节。我希望它能澄清我需要什么。谢谢。告诉我这是一个博宾斯式的笑话问题;它是否对每一行都执行
if
else
(它是否对每一行都发出“空字段!!”警报并运行
AddRow\u onbutton单击
)?您所说的“它执行if和else”是什么意思,它实际上是如何运行的?很抱歉,我添加了更多关于该函数将要执行的操作的细节。我希望它能澄清我需要什么。谢谢。请看我的编辑-您只需执行
返回false
,无需维护状态变量。@Skilldrick:谢谢您的提示,我还不是一名jQuery开发人员,所以了解这些很好。就这样!!!,但是仍然存在一个问题,如果用户键入一个空间,它会认为不是空的,空间不应该被认为是空的,而是空的字段。非常感谢。我考虑过这种方法,但我记得我很早就读过一些关于从
返回的文章。这有点令人困惑-
return
的行为类似于
continue
将在循环中执行,而
returnfalse
的行为类似于
return
通常执行的操作。brainache…在
.val()
行周围添加了
$.trim()
方法,以确保它将空格分类为空字段。请参阅“查看我的编辑”-您只需执行
返回false
即可,无需维护状态变量。@Skilldrick:谢谢您的提示,我还不是一名jQuery开发人员,所以了解这些内容很好。就这样!!!,但是仍然存在一个问题,如果用户键入一个空间,它会认为不是空的,空间不应该被认为是空的,而是空的字段。非常感谢。我考虑过这种方法,但我记得我很早就读过一些关于从
返回的文章。这有点令人困惑-
return
的行为类似于
continue
将在循环中执行,而
returnfalse
的行为类似于
return
通常执行的操作。brainache…在
.val()
行周围添加了
$.trim()
方法,以确保它将空格分类为空字段。值得一试,我现在看到上面的答案:)值得一试,我现在看到上面的答案:)