我从Laravel和Ajax开始,当然我有一个问题:-(

这里的脚本运行良好

$.ajax({
        type : 'GET',
        url : 'getListeGenreCategorieAjax/'+$(this).val() ,
        dataType : 'html',
        beforeSend : function() {$('#waiting').show(); }, // faire apparaitre l'image d'attente
        success : function(data){
                                    $('#id_genre').html(data); // affichage des résultats dans le select
                                    $("#id_genre option[value='"+id_genre_cache+"']").attr("selected", true);
                                    $('#waiting').hide();
                                }
        });


运行它时,我在firebug中看到了路由:

http://localhost/predami_new/public/getListeGenreCategorieAjax/VIDEO


太好了!我收到回应,一切正常。

现在,我在另一页上做同样的事情,它不再起作用了。现在看到的路线是:

http://localhost/predami_new/public/formulaire_produit/getListeGenreCategorieAjax/VIDEO


它不起作用,因为已将此“ formulaire_produit /”插入到路由中。

我的问题:为什么在另一页上修改此路由?我必须做什么 ?

非常感谢您的反馈。祝你有愉快的一天。

多米尼克

最佳答案

这是由于您在url参数中使用了相对URL。当您在页面http://localhost/predami_new/public/时,它会附加'getListeGenreCategorieAjax/'+$(this).val();当您在页面http://localhost/predami_new/public/formulaire_produit/时,它也会附加相同。您应该改用绝对网址:

url : '{{URL::to('/')}}/getListeGenreCategorieAjax/'+$(this).val()


或者,如果您的ajax代码不在刀片文件中:

url : '/predami_new/public/getListeGenreCategorieAjax/'+$(this).val()

08-07 13:34