У меня есть форма ввода, вложенная в div, определенная следующим образом:
<div class="login-input">
<input type="text" name="userId">
</div>
Я добавил кнопку ниже, и внутри события click для этой кнопки у меня есть код, подобный этому:
click: function(){
var user = document.getElementsByName(inputTitle)[0].value;
var myRequest = new Request({
url: '/Context/servletName',
method: 'post',
data: {'user': user},
onRequest: function(){
$('container').setStyle('cursor', 'progress');
},
onSuccess: function(responseText){
$('container').setStyle('cursor', 'auto');
window.location = responseText;
},
onFailure: function(){
$('container').setStyle('cursor', 'auto');
}
});
myRequest.send();
}
Это прекрасно работает во всех браузерах, которые я тестировал (Chrome, FF, Safari), но в IE8 следующая строка кода вызывает проблемы:
var user = document.getElementsByName(inputTitle)[0].value;
Я проверил в инструментах разработки IE, что inputTitle имеет значение "userId".Проблема в том, что
document.getElementsByName(inputTitle)[0];
не определено.
Я также немного поиграл.Добавление этого к просмотру возвращает то, что похоже на действительный объект:
// Returns valid object
document.getElementsByName(inputTitle);
// Returns null
document.getElementsByName(inputTitle).item(0);
document.getElementsByName(inputTitle).value;
Как всегда, заранее спасибо ...
РЕДАКТИРОВАТЬ: Доказательство, я не сумасшедший ....