0

検証が実行されると、失敗し、同じコントローラー インデックスにリダイレクトされます。

    if (!$this->form_validation->run())
    {
        $this->index();
    }

フォームは単純な 2 つのドロップダウンで、一方が他方に依存していますが、ビューがリロードされると、2 番目の依存ドロップダウンが機能しなくなります。

JSはこちら

    $(document).ready(function()
    {
$('#manufacturer_dropdown').change(function()
{

    $("#sw_names > option").remove();
    var id = $('#manufacturer_dropdown').val();
    $.ajax({
        type: "POST",
        url: "software/get_software_names/"+id,
        datatype : "JSON",

        success: function(sw_names)
        {
            $.each(sw_names,function(id,software_name)
            {
                var opt = $('<option />');
                opt.val(software_name);
                opt.text(software_name);
                $('#sw_names').append(opt);
            });
        }
    });
});
    });

ページを手動で更新すると、ドロップダウンが再び機能します。何が起こっているのかわからない、おそらくドキュメント準備機能がチェックを停止するか何か。私はJSの専門家ではありません...

必要に応じて、さらに多くのコードを投稿できます。

編集:JS URL に / がありませんでした

今すぐ動作

4

1 に答える 1

0

ajax リクエストを行う場合は、ajax レスポンスを返す必要があります

そのようなリクエストの途中でページをリダイレクトすることはできません。

この種の問題は非常に一般的なものであるため、この種の問題のすべてについて何かを書きました。うまくいけば、これがあなたを導くでしょう:http://codebyjeff.com/blog/2013/04/how-do-i-use-ajax-with-framework-x

于 2013-10-25T23:05:16.230 に答える