停止执行javascript?

时间:2014-02-06 19:51:17

标签: javascript jquery

好吧,我正试图让他制作一些字段,如果它们中的任何一个是相同的,那就是信息,虽然我的信息不停地给予直接,但我怎么能让它停止给予很多提醒?

function sendAll(){
      for (i = 1;i <=10;i ++) {
         for (o = 1;o <=10;o ++) {
             if(document.getElementById("table" + i).value==document.getElementById("table" + o).value){
                 alert("Some field is equal, check again.");
                 break;
                 return false;
             }
          }
      }
}

4 个答案:

答案 0 :(得分:2)

你的break只是停止了最内循环,但允许外循环继续。要彻底摆脱这个功能,只需使用return

function sendAll(){
      for (i = 1;i <=10;i ++) {
         for (o = 1;o <=10;o ++) {
             if(document.getElementById("table" + i).value==document.getElementById("table" + o).value){
                 alert("Some field is equal, check again.");
                 return false;
             }
          }
      }

      return true; // suggested by Mike W
}

答案 1 :(得分:2)

您不需要break语句,只需将其删除即可。 return声明将完成其余的

使用

function sendAll() {
    for (i = 1; i <= 10; i++) {
        for (o = 1; o <= 10; o++) {
            if (document.getElementById("table" + i).value == document.getElementById("table" + o).value) {
                alert("Some field is equal, check again.");
                //break;
                return false;
            }
        }
    }

    //If you are using for validation purpose return true
    // as default
    return true;
}

答案 2 :(得分:0)

尝试这样的事情

function sendAll(){
var bEqual = false;
  for (i = 1;i <=10;i ++) {
     for (o = 1;o <=10;o ++) {
         if(document.getElementById("table" + i).value==document.getElementById("table" + o).value){
             bEqual = true;
         }
      }
  }
if (bEqual) {
    alert("Some field is equal, check again.");
}
return bEqual;
}

答案 3 :(得分:0)

也许你可以这样做:

function sendAll(){
     if (!fieldsOk()) {
         alert('some message');
     } 
}

function fieldsOk() {
    for (i = 1;i <=10;i ++) {
         for (o = 1;o <=10;o ++) {
             if(document.getElementById("table" + i).value==document.getElementById("table" + o).value){
                 return false;
             }
          }
    }
    return true;
}