Подтвердить что ты не робот

Событие onclick не работает в JavaScript

У меня есть код JavaScript на странице HTML с кнопкой. У меня есть функция "click()", которая обрабатывает событие onClick кнопки. Код для кнопки выглядит следующим образом:

<input type="button" onClick="click()">button text</input>  

Проблема заключается в том, что при нажатии кнопки функция не вызывается. Что я здесь делаю неправильно?
Благодаря

4b9b3361

Ответ 1

Два наблюдения:

  • Вы должны написать

    <input type="button" value="button text" />
    

    вместо

    <input type="button">button text</input>
    
  • Вы должны переименовать свою функцию. Функция click() уже определена на кнопке (она имитирует щелчок) и получает более высокий приоритет, чем ваш метод.

Обратите внимание, что здесь есть несколько предложений, которые являются неправильными, и вы не должны тратить на них много времени:

  • Не используйте onclick="javascript:myfunc()". Используйте только префикс javascript: внутри атрибута href гиперссылки: <a href="javascript:myfunc()">.
  • Вам не нужно заканчивать точкой с запятой. onclick="foo()" и onclick="foo();" оба работают нормально.
  • Атрибуты событий в HTML не чувствительны к регистру, поэтому onclick, onclick и onclick работают все. Общепринятой практикой является запись атрибутов в нижнем регистре: onclick. обратите внимание, что сам javascript чувствителен к регистру, поэтому, если вы пишете document.getElementById("...").onclick = ..., то он должен быть строчным.

Ответ 2

click() - это зарезервированное слово и уже функция, измените имя из click() на runclick(), он отлично работает

Ответ 3

Попробуйте это

<input type="button" onClick="return click();">button text</input>  

Ответ 4

Убедитесь, что вы вызываете ту же функцию или нет.

<script>function greeting(){document.write("hi");}</script>

<input type="button" value="Click Here" onclick="greeting();"/>

Ответ 6

Я предлагаю вам:   <input type="button" value="button text" onclick="click()"> Надеюсь, это поможет вам!

Ответ 7

<script>
//$(document).ready(function () {
function showcontent() {
        document.getElementById("demo22").innerHTML = "Hello World";
}
//});// end of ready function
</script>

У меня была та же проблема, что и вызовы функций onclick. Я включил функцию внутри обычного "$ (document).ready(function() {});" блок, используемый для переноса сценариев jquery. Комментируя этот блок, проблема решена.

Ответ 8

Да, вы должны изменить имя своей функции. Javascript имеет зарезервированные методы и onclick = → → click() < < < является одним из них, поэтому просто переименуйте его, добавьте 's' в конец или что-то еще. сильный текст

Ответ 9

Сегодня это тоже случилось со мной. Имя функции может быть связано с ключевыми словами. Мой случай scrape(). Я меняю имя функции, все работает нормально.

Ответ 10

У члена группы просто была проблема, когда идентификатор кнопки был таким же, как имя функции, проверьте идентификатор кнопки или проверьте другие компоненты и убедитесь, что имена не конфликтуют.