1

私は数日前に問題を抱えてここに来ました、彼らはそれを機能させました。しかし、複製しようとすると失敗します。私を非常に混乱させたままにしておきます。

これがjqueryです

function loadSubCats(value)
{
    $.post("load_sub_cats.php",{ "catid": value },
            function(data) {
        $('#sub_categories').html(data);
    });
}
function loadSubCatsB(value)
{
    $.post("load_sub_catsb.php",{ "catidb": value },
            function(data) {
        $('#sub_categoriesb').html(data);
    });
}

フォーム選択フィールドがあります(ファイルに1つ、load_sub_cats.phpに1つ)

  echo"<select name='cselect2' onChange='loadSubCatsb(this.value)'  class='e1'><option value='0'>Please Select Location</option>";

ここで問題を説明するために、メイン選択から値を選択すると、2番目の選択が正常に表示されます。しかし、表示されているフォームを選択すると、3番目が表示されていません(または呼び出されていません)。親ファイルに両方のdivと一緒にjqueryがあります。これらをサブファイルに含めてみましたが、同じ問題です。3ページ目を呼べないようです。

4

3 に答える 3

1

JavaScript のユーザー定義関数では大文字と小文字が区別されると思います。あなたが持っている -

function loadSubCatsB

しかし呼んでいる -

onChange='loadSubCatsb(this.value)'

- に変更してみてください

onChange='loadSubCatsB(this.value)'
于 2013-01-12T15:28:00.560 に答える
0

PHP エコーの形式が正しくありません!

代わりにこれを試してください:

echo '<select name="cselect2" onChange="loadSubCatsb(this.value)"  class="e1"><option value="0">Please Select Location</option></select>';
于 2013-01-12T14:52:45.763 に答える
0

onChange の代わりに、jQuery のlive関数を使用してみてください。すなわち:

それ以外の:

onChange='loadSubCatsb(this.value)

これを $().ready または同等の関数で使用します。

$('.e1').on('change', function() {
    var newValue = $(this).val();
    loadSubCatsB(newVal);
});
于 2013-01-12T14:53:45.873 に答える