У меня есть немного Javascript, где я размещаю свою форму с помощью XMLHttpRequest, который в противном случае работает нормально, но когда я пытаюсь добавить значения SELECT в массив значений INPUT, кажется, что Javascript сошел с ума (илиУ меня есть).
Эта функция просто создает строку "name1 = value1 & name2 = value2" и передает ее.
Код:
function sendTheForm() {
var postData = '';
var inputArr = document.getElementsByTagName('input');
if (inputArr.hasOwnProperty(length)) alert("ARRAY!!");
var selects = document.getElementsByTagName('select');
var tmpObj = new Object();
for (var i = 0; i < selects.length; i++) {
tmpObj.name = selects[i].name;
tmpObj.value = selects[i].value;
inputArr.push(tmpObj);
}
for (var i = 0; i < inputArr.length; i++) {
if (inputArr[i].value) {
if (postData.length) postData += '&';
postData += inputArr[i].name;
postData += '=';
postData += escape(inputArr[i].value);
}
}
makeHttpReq(postData)
}
Ошибка, которую я получаюв FireFox это: "inputArr.push is not a function
" Это говорит о том, что это массив.
Теперь, помимо того, что это метод (а не функция), кажется, что здесь что-то идет не так, это прямо под моимнос, и я не могу видеть это.Помощь?
Раньше я пытался сделать:
len = inputArr.length;
inputArr[len].name = ...
, а также получал ошибку, что inputArr [31] был неопределен.Это, наверное, очевидно, но я этого не вижу.Помощь