0

<select>HTMLタグに異なるデフォルト値と選択値が必要です。<form>これは、選択した をロードする必要があることを意味し、ボタンを押し<option>た後、<button type="reset">タグを選択するように別のオプションを設定しますが、どうすればよいですか?

<select size="1" name="select1" >
    <option  value='1'> default value </option>
    <option selected="true" value="2">selected value</option>
</select>

ボタンの onclick イベントが機能しません:

<button onclick="resetSearchPanel();" type="reset"> ...

Java スクリプト関数:

 function resetSearchPanel() {

  document.forms['submitSearch'].elements['select1'].value = "1";

}

上記のスニペットは、ボタン タイプ プロパティが「ボタン」に設定されている場合は機能しますが、タイプがリセットに設定されている場合は機能しません。

4

4 に答える 4

0

タイプリセットによりフォームデータがクリアされるため、ボタンにtype='reset'理由がわかりません。だからあなたの問題のためにあなたはボタンを与える必要がありますtype='button'

<button onclick="resetSearchPanel();" type="button">

これがあなたのために働くことを願っています。

于 2012-12-30T11:13:35.283 に答える
0

リセットのオンクリックで、select タグで必要な値を選択済みにするだけです。

リセット ボタンの Onclick() メソッドでは、やりたいことを実行する関数を必ず記述してください。

ボタンのタイプをresetに設定すると、フォーム データ全体がリセットされるため、選択したタグには設定した値が含まれません。タグを外せresetばOKです。

タイプを「リセット」として使用する必要がある場合は、回避策を使用して、フォームがリセットされた後にコードが実行されるようにする必要がありますが、その方法は強く推奨されません。

于 2012-12-30T10:36:31.180 に答える
0

リセット ボタンは、すべての値をデフォルトにリセットします。実際のリセットが行われるonclickに発生するため、そこで行った変更は失われます。

「onafterclick」さえないため、リセットボタンを使用する必要がある場合の唯一の方法は、タイマーを使用することです。

function resetSearchPanel() {
    window.setTimeout(function() {
        document.forms['submitSearch'].elements['select1'].value = "1";
    }, 100);
}

これにより、ボタンをクリックしてから 0.1 秒後に選択された値が変更されます。

于 2012-12-30T11:11:39.147 に答える
-1

JavaScript でのページ読み込み時に必要なオプションを選択します。

于 2012-12-30T10:35:30.163 に答える