结合两个简单的脚本

Mal*_*rte 2 javascript

如何修改下面的脚本,以便它不仅在字段为空时发出警报,而且当字段为空或包含少于10位数时(它可以包含任何内容,而不仅仅是数字)?

  if (myform.mytextinput.value=="")
  alert ('Please enter something!");
Run Code Online (Sandbox Code Playgroud)

检查十位数的好脚本是这样的:

  var input_dg = document.getElementById("mytextinput");
  var text_dg = input_dg.value;
  var totalNrOfDigits = 0;
  for(var i = 0; i < text_dg.length; i++){
  if(/\d/.test(text_dg[i])){
  totalNrOfDigits++;
  }
  }
  alert ('Please enter at least 10 digits!');
Run Code Online (Sandbox Code Playgroud)

我只需要在第一个脚本中"粘贴"第二个脚本,但我缺乏专业知识.这两个脚本都在一个大型表单验证脚本中......

aur*_*ano 5

只需使用||时,OR操作:

if (myform.mytextinput.value=="" || myform.mytextinput.length < 10)
Run Code Online (Sandbox Code Playgroud)

要计算字符串中的位数,我建议使用此代码(来自此答案):

var totalNrOfDigits = myform.mytextinput.replace(/[^0-9]/g,"").length;

// And now combine both checks:
if (myform.mytextinput.value=="" || totalNrOfDigits < 10){
    // Alert the user
}
Run Code Online (Sandbox Code Playgroud)

如果你想使用你使用的相同代码,你只需要替换第一部分:

var input_dg = document.getElementById("mytextinput");
var text_dg = input_dg.value;
var totalNrOfDigits = 0;
for(var i = 0; i < text_dg.length; i++){
    if(/\d/.test(text_dg[i])){
       totalNrOfDigits++;
    }
}

if (myform.mytextinput.value=="" || totalNrOfDigits < 10){
    // Alert the user
}
Run Code Online (Sandbox Code Playgroud)