2つの選択フィールドを持つフォームを持つ単純なPHPスクリプトがあります。どちらも単純な数値です。スクリプトは、2つのフィールドの合計の最大値も持っています。私は動的に2番目のドロップダウンをフィルタリングしようとしているので、ユーザは最大値以上を選択できません。たとえば、最大値が10の場合、最初の選択ドロップダウンリストには1〜10が表示されます。 6を選択したユーザーは、2番目の選択ドロップダウンで0〜4を選択することしかできません。1つのHTMLをフィルタリングするには、別のドロップダウンリストに基づいてドロップダウンを選択してください。
これはかなり簡単ですが、私はJavaScript/jQueryの初心者です。私はにのSOとGoogleを検索しましたが、私のニーズに合わせてカスタマイズする方法はわかりませんが、どこから始めたらよいか分かりません。私がすでに持っているコードを提供しましたが、これは明らかに必要なフィルタリングを持っていません。事前に
<script type="text/javascript">
var max = <?php echo $maximum; ?>;
</script>
<select name="dropdown1" id="dropdown1">
<?php
for ($i = 1; $i <= $maximum; $i++)
{
echo '<option value="'.$i.'">'.$i.'</option>';
}
?>
</select>
<select name="dropdown2" id="dropdown2">
<?php
for ($i = 0; $i <= $maximum; $i++)
{
echo '<option value="'.$i.'">'.$i.'</option>';
}
?>
</select>
ありがとう:
いくつかのサンプルコードは(すでに定義された$の最大を想定します)。
私は今それ自身の.jsファイルにjqueryの次の部分を持っている:
$(document).ready(function() {
// var max ??
$("#dropdown1").change(function() {
var selectedVal = $(this).find("option:selected").val();
$("#dropdown2 option").removeAttr("disabled").removeAttr("selected");
$("#dropdown2 option").each(function() {
if($(this).val() > max - selectedVal*1)
$(this).attr("disabled", "disabled");
});
});
});
しかし、私はjQueryのに私のPHPスクリプトから$の最大値を取得立ち往生ビットです。私はJavaScript変数を作成しなければならないが、それをjQueryに渡す方法はあまりよく分かっていない。私はjQueryを同じPHPスクリプトに埋め込んで、それをエコーするだけで、それをパラメータとして渡すことはあまり確かではない場合、どのように行うのかを理解することができます。
ためlegendofawesomenessのcodeを更新します。しかし、変数をjQueryスニペットに渡す方法がわかりません。 – Biggles