最近、私は多レベルのドロップダウンメニューのコードを完成させる必要がありました。コードの大部分は以前の開発者のものであり、Jquery自体にはあまり慣れていません私に多くのトラブルを与えてきました。jqueryに依存するドロップダウンメニューの送信ボタン
基本的には、ユーザーが最後のドロップダウンからオプションを選択し、次にボタンをクリックし、最後のドロップダウンの情報に応じて特定のページが開きます。現在のところ、ページが自動的に起動する最後のオプションを選択する瞬間があります。コードを使ってボタンを操作しようとする私の試みは、まったく役に立たないものですが、もう少し知識はありません。
すべてのヘルプはすぎなかっ
をいただければ幸いここで私は現在、(ドロップダウンレベルごとのエントリ数を削減それ以外はまったく同じである)以下の持っているすべてのコードです:
のjQuery:
$(function(){
var $cat = $("#category1"),
$subcat = $("#category2"),
$volt = $("#category3");
$cat.on("change",function(){
var _rel = $(this).val();
$subcat.find("option").attr("style","");
$subcat.val("");
if(!_rel) return $subcat.prop("disabled",true);
$subcat.find("[rel="+_rel+"]").show();
$subcat.prop("disabled",false);
});
$subcat.on("change",function(){
debugger;
var _rel = $(this).val();
$volt.find("option").attr("style","");
$volt.val("");
if(!_rel) return $volt.prop("disabled",true);
$volt.find("[rel="+_rel+"]").show();
$volt.prop("disabled",false);
});
});
は、
マイCSS:
#category2 option{
display:none;
}
#category2 option.label{
display:block;
}
#category3 option{
display:none;
}
#category3 option.label{
display:block;
}
とウェブページのタラE:あなたがする必要があるすべてはonclickのリスナー(およびいくつかの入力処理)とボタンを追加し、第三のドロップダウンから値を読んでよう
<script src="//code.jquery.com/jquery-1.11.2.min.js"></script>
<form id="formname" name="formname" method="post" action="submitform.asp" >
<table width="50%" border="0" cellspacing="0" cellpadding="5">
<tr>
<td width="41%" align="right" valign="middle">First Dropdown Menu:</td>
<td width="59%" align="left" valign="middle">
<select name="category1" id="category1">
<option value="">Please Select</option>
<option value="Option1">ONE</option>
<option value="Option2">TWO</option>
<option value="Option3">THREE</option>
<option value="Option4">FOUR</option>
</select>
</td>
</tr>
<form id="formname1" name="formname1" method="post" action="submitform.asp" >
<tr>
<td align="right" valign="middle">Second Dropdown Menu:</td>
<td align="left" valign="middle">
<select disabled="disabled" id="category2" name="category2">
<option class="label" value>Please Select</option>
<!-- R -->
<option rel="Option1" value="R12">12</option>
<option rel="Option1" value="R24">24</option>
<option rel="Option1" value="R36">36</option>
<option rel="Option1" value="R48">48</option>
<option rel="Option1" value="R80">80</option>
</select>
</td>
</tr>
<form id="formname2" name="formname2" method="post" action="submitform.asp" >
<tr>
<td align="right" valign="middle">Third Dropdown Menu</td>
<td align="left" valign="middle">
<select disabled="disabled" id="category3" name="category3">
<option class="label" value>Please Select</option>
<!-- R -->
<option rel="R12" value="http://www.yourwebsite.com">R12V1</option>
<option rel="R24" value="http://www.yourwebsite1.com">R24V1</option>
<option rel="R36" value="http://www.yourwebsite2.com">R36V1</option>
<option rel="R48" value="http://www.yourwebsite3.com">R48V1</option>
</select>
</td>
</tr>
<script type="text/javascript">
var urlmenu = document.getElementById('category3');
urlmenu.onsubmit = function() {
window.open(this.options[ this.selectedIndex ].value);
};
</script>
</table>
</form>
</html>
お返事ありがとうございます!私はこれでいくつかの問題を抱えています。ボタンは灰色で表示され、クリック可能ではありませんが、ボタンは表示され、ドロップダウンは機能します。ページのスクリプトsrcを指定した新しいスクリプト()に変更すると、すべてが完全に動作しなくなったり、ドロップダウンがないなど、明らかに間違っていることがありますか? – Rob
@Rob私が作業するコードは、3つのドロップダウンすべてから値を選択するまではボタンがグレー表示されています。理解していれば、jQuery 2.1.1スクリプトをインクルードしてhtmlページを開くとコンソールエラーが発生しますか? Chromeであなたはコンソールを開くことができますF12 –
ボタンがグレー表示され、値が選択されるまで素晴らしいです!それは選択された値でさえも、私のためにグレー・グレーではありません。コンソールを開くと、空のボックスになります。途中で助けてくれてありがとう! – Rob