9

入力したすべての値をリセットできるフォームとリセットボタンを使用していますが、まったく機能していません。

Firefoxの[コンソール]タブでデバッグするとillegal character、jQueryスクリプトの最後にエラーが表示されました。誰かがここで間違っている部分を教えてもらえますか?

<!DOCTYPE HTML>
<html lang="en-IN">
<head>
  <meta charset="UTF-8">
  <title></title>
  <script type="text/javascript" src="js/jquery1.7.2.js"></script>
</head>
<body>
  <script type="text/javascript">
    jQuery('#reset').click(function(){
        $(':input','#myform')
        .not(':button, :submit, :reset, :hidden')
        .val('')
        .removeAttr('checked')
        .removeAttr('selected');
    });​
</script>
<form id='myform'>
  <input type='text' value='test' />
    <select>
      <option>One</option>
      <option selected="true">Two</option>
    </select>
    <select multiple="true" size="5">
      <option>One</option>
      <option selected="true">Two</option>
    </select>
    <input type='button' id='reset' value='reset' />
</form>​
</body>
</html>
4

4 に答える 4

13

<input type="reset" >十分ではないですか?

<form>

   <input type='reset'  />

</form>

デモ

于 2012-08-30T06:39:02.553 に答える
12

次のことを試してください。

$(function() {
    $('#reset').click(function() {
        $(':input','#myform')
            .not(':button, :submit, :reset, :hidden')
            .val('')
            .removeAttr('checked')
            .removeAttr('selected');
    });
});

DOMの準備が整う前にJavaScriptを実行しています。$(function() {})DOMの準備ができたときにのみ実行されます。詳細はこちら:.ready()

于 2012-08-30T06:35:09.930 に答える
8

フォームフィールドをリセットするための他のjQueryソリューションは次のとおりです。

$('#form')[0].reset(); or $('#form').get(0).reset();

もう1つ、より具体的には、必須フィールドを参照します。

$('#form').find('input, select').not(':button, :submit, :reset, :hidden').val('').removeAttr('checked').removeAttr('selected');

jsFiddleワーキングライブデモ-jQueryソリューション

JavaScriptのみを使用する:

document.getElementById('form').reset();

HTMLのみを使用する:

回答の1つで述べたように、ほとんどの場合、フォームフィールドをリセットするためにJavaScriptは必要ありません。これはtype="reset"、ボタンを設定するだけで機能します。例:

<button type="reset" value="Reset">Reset</button>
于 2012-08-30T06:48:49.360 に答える
0

以下のJQueryは、すべてのテキストとドロップダウンをリセットします。

#YourIDをリセットしようとしているフィールド/入力のIDに置き換えるだけです。複数の入力の場合は、行を複製し、必要に応じてIDを追加します。

$(".btn-reset").click(function () { 
    $(this).closest('form').find("input[type=text], textarea").val(""); 
    $('#YourID').removeAttr('selected').find('option:eq(0)').prop('selected', true); 
});
于 2019-06-25T15:28:08.213 に答える