ajax调用第二次无效

时间:2015-11-16 07:02:49

标签: javascript php jquery ajax

我正在处理一个表单,以显示数据库的结果取决于2个条目。在这里Automarke(英文品牌)和Modell(模型),请参阅2 entries

Box Modell及时更改,取决于Automarke。我在这里使用:

            $(MainInput).on('change' , Marke, function() {
            // $( Marke ).change(function() {
                //remove all options
                $( Modell).find('option').remove();             
                var brand = $( Marke ).find('option:selected').text();
                $.ajax({
                        url: '/hk/phpscript/getModel.php',
                        //url: 'schreibeMail.php',
                        type: 'POST',
                        //data: { var_PHP_data: var_data },
                        data: { brand: brand },
                        success: function(data) {
                            // do something;
                            test = data;
                            var arr = JSON.parse(test);
                            var help = "";
                            for(i = 0; i <= arr.length - 1; i++){
                            $(Modell).append("<option>" + arr[i].Modell + "</option>");
                            $(Modell).selectpicker('refresh');
                            }
                        }
                });
            });

一切正常。连接发生在ajax和php上,请参阅下面的代码

            //click search
            $(search).on('click' , searchCar, function() {
            // $(searchCar).click(function() {

                if( $(Marke).val() == "" || $(Modell).val() == "")
                {   
                    alert("Bitte wählen Sie eine Automarke und ein Modell aus!");
                    return;
                }
                whereCondition = setSearchQuery();
                // alert(whereCondition);
                //alert(value);
                alert(whereCondition);
                //function () {
                $.ajax({
                    url: '/hk/phpscript/getCar.php',
                    //url: 'schreibeMail.php',
                    type: 'POST',
                    //data: { var_PHP_data: var_data },
                    data: { whereCondition: whereCondition },
                    success: function(data) {
                    alert(whereCondition);
                    ... do anything with data
                    }

我从数据库中获得结果。之后,出现了2个问题。

1)更改Automarke参数不会改变Modell输入,因为之前是可能的 2)无法进行第二次搜索,表单不作出反应。可以识别 - 不会出现警告信息。

有没有人有想法?

谢谢。

注册

萨米尔

编辑:

单击按钮后,任何javascript函数都不起作用。如果我改变&#34; Automarke&#34;的价值,它就不会做出反应。通常是&#34; Modell&#34;下拉菜单获取新值,如果&#34; Automarke更改值。

2 个答案:

答案 0 :(得分:0)

你可以尝试这样:

$(document).on('change','selector',function(){
//your code
});

答案 1 :(得分:0)

我发现了自己的错误。我使用$(Marke).val()代替$('#Marke')

使用$(Marke).val()后,如果我再次点击该按钮,则值为undefined并导致错误。