href回应认为这是假的

时间:2012-09-28 04:20:53

标签: javascript jquery ajax

伙计我在这里有一个情况。我试图验证来自用户的输入,如果输入是!= "",它将在if内部做什么,如果它的其他内容它将在else中做什么。验证是完全有效的,除了一件事。虽然条件是假的,但仍然会进入if条件并使用此代码刷新整个系统$(location).attr('href','account_setting_registrar.php');

你可以帮帮我吗?

        $(document).ready(function (){
         var username ;
         var eadd;

$('#change_usrname_button').click(function (){
    username = $('#new_chnge_username').val();      

            if(username != "" ){
                    $.ajax({
                        type: 'POST',
                        url: 'account_setting_registrar_get.php',
                        dataType: 'json',
                        data:'username='+username,
                        success: function (data){


                                   if(data.error == false){

                                    alert("your username is successfuly changed");

                                       $(location).attr('href','account_setting_registrar.php');
                                   }
                                   else{
                                    alert("update error");
                                 }
                       }  
                    });

                }

                else{
                   alert("please put the new username");
                 }


});



            $('#change_eadd_button').click(function (){


                eadd = $('#new_chnge_eadd').val();


                if(eadd != "" ){
                        $.ajax({
                            type: 'POST',
                            url: 'account_setting_registrar_get.php',
                            dataType: 'json',
                            data:'emailadd='+eadd,
                            success: function (data){

                               if(data.error == false){

                                alert("your email address is successfuly changed");
                                $(location).attr('href','account_setting_registrar.php');
                               }

                               else{
                                alert("update error");
                               }

                             }
                        });
                 }

                 else{
                   alert("please put the new username");
                 }



        });

            });

3 个答案:

答案 0 :(得分:1)

我认为您的验证应该更加彻底......

您只检查空字符串,但如果用户名为nullundefined,您也不希望它有效。

您的验证应该如下:

if (username) {
 // ajax
}

这将检查以下内容:

  • 未定义
  • 的NaN
  • 空字符串("")
  • 0

答案 1 :(得分:0)

您应该使用data.error=='false',因为您可能获得的响应是​​json格式的字符串。

答案 2 :(得分:-1)

       $(document).ready(function (){
         var username ;
         var eadd;

$('#change_usrname_button').click(function (){
    username = $('#new_chnge_username').val();      

            if(username){
                    $.ajax({
                        type: 'POST',
                        url: 'account_setting_registrar_get.php',
                        dataType: 'json',
                        data:'username='+username,
                        success: function (data){


                                   if(data.error == true){

                                    alert("your username is successfuly changed");

                                       $(location).attr('href','account_setting_registrar.php');
                                   }
                                   else{
                                    alert("update error");
                                 }
                       }  
                    });

                }

                else{
                   alert("please put the new username");
                 }


});



            $('#change_eadd_button').click(function (){


                eadd = $('#new_chnge_eadd').val();


                if(eadd){
                        $.ajax({
                            type: 'POST',
                            url: 'account_setting_registrar_get.php',
                            dataType: 'json',
                            data:'emailadd='+eadd,
                            success: function (data){

                               if(data.error == true){

                                alert("your email address is successfuly changed");
                                $(location).attr('href','account_setting_registrar.php');
                               }

                               else{
                                alert("update error");
                               }

                             }
                        });
                 }

                 else{
                   alert("please put the new username");
                 }



        });

            });

你可以尝试这个先生..