2017-12-23 2 views
3

私はいくつかの疑問を抱いています。私は選択オプションを持っています。選択オプションには別のオプションがあります。 HTMLファイルと、それは二つの選択肢のためではなく、第三の選択肢に適していますが、そのことは のようなエラー与え番目のオプションをクリックしながら は、良く機能していない。ここでは、このdivタグに1つのページで異なるHTMLを読み込むことができない

「捕捉されない例外TypeErrorをプロパティを読み取ることができません未定義の 『です』」私のコードです

$(function() { 
 
    $('#type').change(function() { 
 
    if ($('#type').val() == 'a') { 
 
     
 
     $('#loadCheckHere').load('./templates/a.html'); 
 
     } 
 
    } else if ($('#type').val() == 'b') { 
 
    
 
     $('#loadCheckHere').load('./templates/b.html'); 
 
     
 
    } else { 
 
     alert('select properly'); 
 
     $('#loadCheckHere').load('./templates/c.html'); 
 
    } 
 
    }); 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<select name="type" id="type" style="margin-left:57px;width:180px;"> 
 
<option name="" value="">Select Asset Recovery</option> 
 
<option name="a" value="a">Add A</option> 
 
<option name="b" value="b">Add B</option> 
 
<option name="c" value="c">Add C</option> 
 
</select> 
 

 
<!--This is div tag,Here only I'm loading different html--> 
 
<div id="loadCheckHere" style="background-color:white"></div>

+0

を正常に見えます')と$('#b ')? – Plotisateur

+1

@Ariaこの場合、 '$( 'option [name = a]')'と '$( 'option [name = b]')' 'でなければなりません。 '.is()'の定義されていないエラーは、これだけから来ていると思います。 – Plotisateur

+1

あなたの解決策の@Plotisateur +1 bees、はい、 'a'または' b'のidを持つ要素はありません。 'またはあなたの提案を使用してください。 – Aria

答えて

1

Plunker link

をそれをチェックアウト

物事私のために$( '#Aのある

$(function() { 
    $('#type').change(function() { 
    if ($('#type').val() == 'a') { 

     $('#loadCheckHere').load('a.html'); 

    } else if ($('#type').val() == 'b') { 

     $('#loadCheckHere').load('b.html'); 

    } else { 
     //alert('select properly'); 
     $('#loadCheckHere').load('c.html'); 
    } 
    }); 
}); 
+0

ありがとう、それは正常に動作します。しかし、私は剣道のUIフレームワークを使用しているので、私はそのページでそのエラーを投げる理由を使用しようとしています。 – Ashika

0

「is」というプロパティキーを持つ値のように見えますが、未定義です。

候補者は、次のとおりです。

var isPrinterVisible = $('#a').is(':visible'); 

var isPcVisible = $('#b').is(':visible'); 

あなたは必ず "A" 又は "B" のページ上に存在するのidを持つ要素はありますか?つまり、Webコンソールに$('#a')または$('#b')と入力すると、何が表示されますか?

提供されたHTMLに基づいて、指定したオプションには名前と値の属性のみが設定されているようですが、IDはありません。

多分、我々は、変更しようとすることができます

<option name="a" value="a">Add Printer</option> 
<option name="b" value="b">Add PC</option> 
<option name="c" value="c">Store Deinstall</option> 

へ:

<option id="a" name="a" value="a">Add Printer</option> 
<option id="b" name="b" value="b">Add PC</option> 
<option id="c" name="c" value="c">Store Deinstall</option> 
+0

私の質問は、1ページに異なるHTMLを変更したり読み込んだりすることができますか? – Ashika

+0

@Ashikaあなたの問題をすでに解決したようですね!あなたが私の応答を助けてくれたら、覚えておいてください。ハッピーコーディング! – Ninja

0

オプションBは、ID /#ではありません。これはvalue = bと書かれているため、未定義になります。構文は、おそらくそれが誤りであることを引き起こしている私はplunkerを追加した

+0

@Ashikaこの編集されたフレームワークにはどのフレームワークを使用していますか? –

+0

私のコードは正常に動作していますが、私は剣道UIフレームワークを使用しています。そのフレームワークでは、別のHTMLページを作成してアクセスする必要があります。これをjqueryコードで試してみましたが、私は他のページに移動しようとするとエラーをスローし続けます。 – Ashika

関連する問題