0

我有一个脚本,我想在其中获取表单的占位符属性,然后在这样的函数中用作条件(这对我来说似乎不正确,所以我并不惊讶它不起作用):

if (document.getElementsByName("Name").input.placeholder == "Enter Name") {
    //do something
}

包装函数实际上将表单作为参数:

function form_function(form) {
    var input = document.getElementsByName("Name");
    var placeholder = input.placeholder;

    if (placeholder == "Empty") {
        // do something
    }
}

我尝试了一些不同的方法,但无济于事。错误控制台告诉我输入未定义。例如,我从以下开始:

var placeholder = form.input.placeholder;

那也没有用。

然后我运行了一些警报测试,当我只是提醒输入时,我得到了NodeList对象,我不知道如何处理。

所以我尝试循环遍历NodeList并得到一些我不确定如何使用的对象。

var inputList = document.getElementsByName("Name");

var inputArray = [];

for (var i = 0; i < inputList.length; i++) {
    inputArray[i] = inputList[i];
    alert(inputArray[i]);
}

警报给出[object HTMLInputElement]

基本上,我只想针对具有特定名称属性的表单中的占位符值进行测试。看来我走错了...

谢谢。

4

1 回答 1

0

正如@apsillers 正确指出的那样,返回的元素在一个数组中,所以我需要捕获我需要的那个。我和这个一起去了:

placeholder = document.getElementsByName("Name")[0].placeholder;

然后能够根据需要在函数中使用它。

于 2013-08-28T19:11:49.727 回答