0

我正在制作一个小表格,您可以在其中选择您的价值。

如果该值未正确填写(我已经给出了一些示例答案),我希望弹出一个警告框,指示错误填写的文本字段。

似乎无法让它工作......这就是我尝试过的

if(document.getElementById("BS").value.match ("thin","thick","medium")
{
    alert("Fill in the correct values");
}

这是小提琴。 http://jsfiddle.net/vuc8Z/

4

2 回答 2

0

如果你想使用 match 方法,那么你可以使用 like :

   var str = document.getElementById("BD").value;
   if(str.match('thin') || str.match('thick') || str.match('medium')) 
   {
     alert("Fill in the correct values");
   }

据我所知,match 将正则表达式作为参数,并且不采用多个值。

于 2013-09-02T11:50:10.603 回答
0

这是我的建议:

var val = document.getElementById("BD").value;
 if (!(val == "thin" || val =="thick" || val =="medium")) {
    alert("Vul een geldige waarde in bij de aangegeven velden");
}

演示在这里

请注意,您正在使用getElementById("BS"),但BD我认为您想要。我将您的匹配函数更改为三重||(或)if 语句。

我将您的 if 语句移动到“go”按钮单击处理程序内部,以便在单击按钮时触发它。

match() 函数需要一个正则表达式,您可以在此处阅读更多信息(MDN:.match())。

编辑:

要检查颜色文本输入的格式是否正确,您可以使用以下命令:

var filter = /^#(?:[0-9a-fA-F]{3}){1,2}$/;
if (!color.match(filter)) {
    alert('Color code Error!');
}

在这里更新了演示

于 2013-08-30T15:36:53.227 回答