找不到html5表单checkValidity()方法

时间:2011-09-12 10:58:56

标签: html5 forms checkvalidity

我正在尝试使用表单方法checkValidity()。

http://html5test.com/告诉我,我的浏览器(Chrome)支持表单级checkValidity方法。

然而,使用jsfiddle http://jsfiddle.net/LcgnQ/2/我尝试了以下html和javascript片段:

<form id="profileform" name="profileform">
    <input type="text" id="firstname" required>
    <input type="button" id="testbutton" value="Test">
</form>

$('#testbutton').bind('click',function(){

    try{
    alert($('#profileform').checkValidity());
    }
    catch(err){alert('err='+err)};
});

我收到错误:object has no method checkValidity()

我做错了什么?

感谢。

2 个答案:

答案 0 :(得分:106)

尝试:

$('#profileform')[0].checkValidity()

当您选择$('#profileform')时,您将获得一个jQuery对象数组。要访问实际的DOM属性,必须选择数组中的第一个项目,即原始DOM元素。

答案 1 :(得分:0)

@robertc 的回答是完美的。无论如何,我只是使用 jQuery 的 class Program { static void Main(string[] args) { try { bool validLogin = ValidateUser("domain", "username", "password" ); if (validLogin) { var path = "\\\\10.123.123.123\\folder$\\subfolder"; string fullPath = Path.Combine("\\\\10.123.123.123\\folder$\\subfolder", "file_name1"); string body = "Test File Contents"; if (!Directory.Exists(path)) { Directory.CreateDirectory((path)); } File.WriteAllText(fullPath, body); } } catch (Exception ex) { Console.WriteLine(ex.ToString() + ex.Message); } } public static bool ValidateUser(string domainName, string username, string password) { string userDn = $"{username}@{domainName}"; try { using (var connection = new LdapConnection {SecureSocketLayer = false}) { connection.Connect(domainName, LdapConnection.DefaultPort); connection.Bind(userDn, password); if (connection.Bound) return true; } } catch (LdapException ) { // Log exception } return false; } } 函数添加另一种方法。它还检索给定索引的 DOM 元素,或者如果没有声明索引,则检索所有匹配的 DOM 元素。

最后完全一样,只是写得更冗长:

.get([index])

将文档留在此处:https://api.jquery.com/get/