Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/373.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
来自javascript的HTML5验证_Javascript_Html_Validation - Fatal编程技术网

来自javascript的HTML5验证

来自javascript的HTML5验证,javascript,html,validation,Javascript,Html,Validation,当我从javascript创建HTML并添加事件programmaticaly时,我看不到验证弹出窗口。这里是指向我的JSFIDLE的链接 以下是我的javascript: var newInput = document.createElement ("input"); document.body.appendChild (newInput); newInput.type = "text"; //newInput.required = true; newInput.Id = "inputId"

当我从javascript创建HTML并添加事件programmaticaly时,我看不到验证弹出窗口。这里是指向我的JSFIDLE的链接

以下是我的javascript:

var newInput = document.createElement ("input");
document.body.appendChild (newInput);
newInput.type = "text";
//newInput.required = true;
newInput.Id = "inputId";
var newButton = document.createElement ("input");
document.body.appendChild (newButton);
newButton.type = "button";

newInput.addEventListener ("input", checkValid, false); 

function checkValid(newInput) 
{
 if (newInput.value == "") 
 {
   newInput.setCustomValidity("Write a text");
 } 
  else 
 {
   newInput.setCustomValidity(''); 
 }
}

newButton.onclick = function () 
{
   var newInputValue = newInput.value;
   var newInputAdd = document.createElement("p");
   newInputAdd.innerHTML = newInputValue;
   checkValid (newInputValue);
   document.body.insertBefore (newInputAdd, document.body.childNodes[0]);
   newInput.value = '';
 }

我做错了什么?

您调用的是
checkValid
值,而不是对可以应用
.setCustomValidity
的控件的引用。您需要
检查有效(新输入)


此外,我不会以
a(b)
的方式留下空格,而是将其写成
a(b)
我试图让工具提示触发一段时间,我甚至能够将验证消息读出到
中。然而,在做了更多的研究之后,您似乎需要触发一个提交事件,您没有这样做,但可以通过
来完成

相关问题可在此处找到:


什么是客户有效性?它不是在任何地方定义的,而是在checkValid()函数中调用的。我也不知道它是什么,但它是一个内置函数: