2016-05-29 2 views
-3

Вот мой код, что я пытался: Markup:сброс не является функцией в JavaScript

<textarea class="form-control textareaInput" rows="12" id="textareaInput"></textarea> 


<div class="row"> 
    <div class="col-lg-2 text-center"> 
     <div class="form-group"> 
      <button class="form-control btn btn-primary reset" onclick="myFunction()">Reset</button> 
     </div> 
    </div> 
</div> 

Моя функция:

function myFunction() { 
    //alert("ok"); 
    document.getElementById("textareaInput").reset(); 
} 

Я получаю сообщение об ошибке, когда я нажимаю на reset кнопка.
Ошибка:

Uncaught TypeError: document.getElementById(...).reset is not a function

Где проблема? Заранее спасибо. N.B: я не использовал form тег.

+1

Если вы знаете, что не используете форму, вы знаете об ошибке, не так ли? –

+0

без использования формы, я хочу сбросить текст. Как я могу это сделать? где моя проблема? –

+1

Вам нужно будет найти альтернативу, потому что 'reset()' требует 'HTMLFormElement': https://developer.mozilla.org/en-US/docs/Web/API/HTMLFormElement/reset –

ответ

2

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

document.getElementById("textareaInput").value = ""; 
2

Метод HTMLFormElement.reset() восстанавливает значения по умолчанию элемента формы. Вы должны ПОЛЬЗОВАТЬСЯ <form> наверняка.

1

Метод .RESET доступны только для элементов форм (https://developer.mozilla.org/en-US/docs/Web/API/HTMLFormElement/reset), а не для текстовой области или ввода DOM-элементов. Итак, если вы хотите, чтобы очистить текст в текстовом поле, вы можете сделать это с двумя способами:.

  1. document.getElementById («textareaInput») значение = «»;
  2. Оберните свое текстовое поле с помощью элемента формы и используйте его сброс.
+0

Как примечание, значение по умолчанию не всегда пустая строка –

0

положенные элементы в виде тега:

<body> 
    <form> 
<textarea class="form-control textareaInput" rows="12" id="textareaInput"></textarea> 
<div class="row"> 
    <div class="col-lg-2 text-center"> 
     <div class="form-group"> 
      <button class="form-control btn btn-primary reset" onclick="myFunction()">Reset</button> 
     </div> 
    </div> 
</div> 
     </form> 
<script> 
    function myFunction() { 
    //alert("ok"); 
    document.getElementById("textareaInput").reset(); 
} 
    </script> 
</body> 
0

без использования form, чтобы сбросить элемент textarea или любой другой input, просто установите его значение по умолчанию, используя DOM узла свойство defaultValue:

function myFunction() { 
    document.getElementById("textareaInput").value = document.getElementById("textareaInput").defaultValue; 
} 

В вашем случае, поскольку значение по умолчанию - пустая строка, вы можете просто переустановить его на пустую строку, но это будет сложнее поддерживать.

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