JavaScript检查页面是否包含表单

时间:2014-09-06 23:59:23

标签: javascript jquery html forms dom

我创建了一个JavaScript,它插入到我处理的任何网页的head标签中,应该注意验证该页面是否包含表单元素,如果是,请返回id和name参数的值

//Check if page contain a form
var elementF =  document.getElementsByTagName('form');
var txt = "";
for (var i=0; i<elementF.length; i++)
    {
  txt = txt + elementF.elements[i].value + "<br>";
    }
console.log("ElementF: "+txt);

我在使用或不包含表单元素的页面中测试了代码,但结果始终相同:

  

未捕获的TypeError:无法读取属性&#39; 0&#39;未定义的

如何检查表单元素是否存在?

4 个答案:

答案 0 :(得分:3)

如何使用简单的$("form")

来使用JQuery

纯javascript版本将使用querySelectorAll,如:

document.querySelectorAll("form")

答案 1 :(得分:2)

正如Dalorzo在他的回答中所说,你可以像这样使用jQuery:

$('form')

或者,您可以使用querySelectorAll

document.querySelectorAll('form');

答案 2 :(得分:1)

如果您偶然需要支持IE&lt; 8,你可以使用

document.getElementsByTagName("form").length > 0

答案 3 :(得分:1)

只是您可以使用的一个简单示例。确保在“文档就绪”功能中调用它:

function getForm()
{
    if($("form").length) 
        return $("form");
    else
        return false;
}

$( document ).ready(function() {
    var my_form = getForm();
    if(my_form !== false) 
        alert("found form with the id: " + my_form.prop("id"));
    else
        alert("no form found");
});