JavaScript で動的なページを作成しようとしています。そのためにjQueryを使用しています。PHP やその他のサーバー側言語を避けるという考え方です。selectboxとiframeを使用していますが、理解できません。なぜ機能しないのですか。「main.html」がスニペットに表示されます。ここにエラーはありませんが、Web ページで何も変わりません。ターゲット パスは www/materials/dev1/zad.html です (オプション 1 は「1」で選択され、オプション 2 は「zad」で選択されます。というように、ページが動的になります。) ファイル main.html は次の場所にあります。 www/main.html にあります。私はどこで間違いを犯しましたか?
さまざまなクラスから、さらには tagName から取得しようとしましたが、<select>
うまくできませんでした。click() ではなく、別の関数にすることも可能だと思います。何か役に立つアドバイスをいただけませんか?
$(document).ready(function() {
var aside_val = $('#aside_menu').val();
//get the value of the first selection
var header_val = $('#header_menu').val();
//get the value of the second selection
var folder = 'dev' + aside_val;
//get the value of the folder
$('.selection').click(function() {
$('iframe#content').attr('src', "materials/" + folder + "/" + header_val + ".html");
//change the src attribute of the iframe in order to get the proper page
});
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script>
<select name="aside_menu" id="aside_menu" tabindex="1" style="top: 20px;" class="selection">
<optgroup label="choose opt">
<option class="opt" value="1">option 1</option>
<option class="opt" value="2">option 2</option>
<option class="opt" value="3">option 3</option>
</optgroup>
</select>
<select name="header_menu" id="header_menu" tabindex="1" class="selection">
<optgroup label="choose opt2">
<option class="opt" value="zad">zad</option>
<option class="opt" value="ooa">ООА</option>
<option class="opt" value="scenario">scenario</option>
<option class="opt" value="hipo">HIPO</option>
<option class="opt" value="functions">functions</option>
</optgroup>
</select>
<iframe src="materials/dev1/zad.html" width="986" height="600" align="center" id="content">no iframe</iframe>