IE 8 не вызывает нажатие кнопки типа элементов ввода

Следующий JavaScript работает в Chrome, FF и т. д. — он вызывает соответствующую кнопку, но не в IE8:

<input type="submit" value="save" name="save" class="button">

document.getElementsByName('save').item(0).click()

Есть ли эквивалент (собственный Javascript), который работает в IE8?


person user3522374    schedule 11.04.2014    source источник
comment
Вот демонстрация. Здесь, в IE8, все работает отлично.   -  person iJade    schedule 11.04.2014


Ответы (1)


Дайте вашей форме и кнопке id, установите кнопку как тип button, она должна работать в каждом (древнем) браузере:

JavaScript:

<script type="text/javascript">

function alertMsg()   {
 if (confirm("Are you sure you want to submit the form?"))  {
 //Try to submit the form
 document.getElementById('form1').submit();
 }
}
</script>

HTML

<form name="form1" id="form1" action="">
<input type="button" onclick="alertMsg()" value="Save" name="action_saveandcontinue" class="button" id="action_saveandcontinue"/>
</form>

РЕДАКТИРОВАТЬ: Если у вас нет контроля над HTML-кодом, лучше прочитайте этот вопрос SO, этот вопрос SO и этот MSDN документация.

person Bud Damyanov    schedule 11.04.2014
comment
В этом случае я не имею никакого влияния на html-код. Сайт встроен в мой сайт (тот же источник, поэтому нет междоменных проблем) через iframe. Также форма имеет более одной кнопки ввода. Кроме того, элементы html не имеют идентификаторов. - person user3522374; 11.04.2014