Я тестирую с помощью обычного HTML-раскрывающегося меню, и я столкнулся с проблемой, когда дело доходит до кнопки отправки этого...
Ниже приведен мой код:
<head>
<script>
function submitButton()
{
var mylist=document.getElementById("myList");
document.getElementById("favorite").innerHTML=mylist.options[mylist.selectedIndex].text;
}
</script>
</head>
<body>
<form>
<select id="myList">
<option> </option>
<option>A</option>
<option>B</option>
<option>C</option>
<option>D</option>
</select>
<button onclick= 'submitButton()'> Submit </button>
<p>You chose: <span id= 'favorite'> </span></p>
</form>
</body>
Теперь, когда я запускаю этот код через Live в Adobe Dreamweaver, он работает именно так, как я хочу; когда я выберу что-нибудь из своего раскрывающегося меню и нажму кнопку "Отправить", конкретное письмо появится после "Вы выбрали".
Однако, когда я запускаю его в Google Chrome и Safari, все получается иначе. Когда я выбираю из раскрывающегося списка и нажимаю "Отправить", буква появляется на своем месте в течение секунды секунды, тогда страница, похоже, автоматически обновляется, оставляя раскрывающееся меню по своему первоначальному значению и <span>
. Кто-нибудь знает, почему, и как я могу это решить?
По умолчанию <button>
в форме будет отправлять форму, загружая URL-адрес действия формы или той же страницы, если у нее ее нет.
Просто измените тип кнопки на кнопку, которая предотвратит ее отправку формы.
<button type="button" onclick= 'submitButton()'> Submit </button>
вы можете попробовать это также
<head>
<script>
function submitButton()
{
var mylist=document.getElementById("myList");
document.getElementById("favorite").innerHTML=mylist.options[mylist.selectedIndex].text;
}
</script>
</head>
<body>
<form>
<select id="myList">
<option> </option>
<option>A</option>
<option>B</option>
<option>C</option>
<option>D</option>
</select>
<input type="button" onclick= 'submitButton()' value="Submit" />
<p>You chose: <span id= 'favorite'> </span></p>
</form>
</body>