2013-08-20 5 views
0

У меня есть функция, называемая clear(), которая вызывается при нажатии кнопки в моей форме. JS функции:моя функция «clear()» не получает вызов

function clear() { 
    console.log("clear"); 
    document.getElementById("feet").value = ''; 
    document.getElementById("meters").value = ''; 
} 

HTML:

<button onclick="clear();return false;">Clear</button> 

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

+0

У вас есть функция внутри тега 'script' –

+0

Да, ее внутри тега скрипта – Cristiano

+0

Не могли бы вы разместить больше кода или создать jsfiddle, отображающий проблему? –

ответ

3

Не используйте clear(), используйте другое имя как @ j08691.

0

Вы не можете использовать clear как имя функции (Is "clear" a reserved word in Javascript?). Проблема заключается только в том, что вы пытаетесь очистить контекст документа, который затеняет глобальный контекст окна. Измените его на _clear и он будет работать.

function _clear() { 
    console.log("clear"); 
    document.getElementById("feet").value = ''; 
    document.getElementById("meters").value = ''; 
} 

HTML:

<button onclick="_clear();return false;">Clear</button> 
+0

. , , что дает? – Brian

+0

clear не является зарезервированным словом. https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Reserved_Words?redirectlocale=en-US&redirectslug=JavaScript%2FReference%2FReserved_Words – Schleis

+0

Да, я переименовал функцию _clear, протестировал ее, и она сработала поэтому я просто подумал, что это зарезервированное слово. Я даже не посмотрел. Позвольте мне изменить свой пост, спасибо за отзывы. – Brian

1

Я не знаю, почему вы используете вернуться ложным там Но Ithink, если вы пытаетесь использовать его как этот

<button onclick="_clear()">Clear</button>

он будет работать

+0

return false останавливает поведение браузера по умолчанию: http://stackoverflow.com/questions/128923/whats-the-effect-of-adding-return-false-to-an-onclick-event – Brian

+0

О, я вижу, я думал, что return false ничего не делает здесь, похоже, что что-то не так с document.getElementById ("feet"). Value = ''; –

0

Метод clear() применяется только в контексте документа и является устаревшим методом обмундирование оливково-серого цвета Мы не можем использовать в этом контексте. Вы можете использовать _clear() или любое другое альтернативное имя метода.

Смежные вопросы