什么是错在这里?如果语句不工作在阿贾克斯,但工作在控制台? [英] What is wrong here? If statement not working in ajax, but works in console?

查看:88
本文介绍了什么是错在这里?如果语句不工作在阿贾克斯,但工作在控制台?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我一直在这一段时间了。出于某种原因,我的密码字段不通过AJAX到达我editaccount.php。请确认jQuery是正确的设置,以通添加到变量,如果传不禁止发送。我想确认所有其他领域的做派。

没有人知道修复这个。如果if语句使用警报()在控制台检查这则是它应该工作。但是,通永远不会被放置到对象的myData。为什么?我怎样才能解决这个问题?我知道密码选择是正确的。如果我删除if语句然后传球被传送出去。

JQuery的:

  $(文件)。在('提交','#editaccount',函数(事件){
。事件preventDefault();

myData的= {
        联系人姓名:$('输入[名称=联系人姓名]')VAL()。
        业务:$('输入[名称=商家]')VAL()。
        电子邮件:$('输入[名称=电子邮件]')VAL()。
        code:$('输入[名称= code])VAL()。
        电话:$('输入[名称=电话]')VAL()。
        priceband:$('输入[名称= priceband])VAL()
        地址:$('输入[名称=地址])VAL()。
        激活:$('输入[名称=活动])VAL()。
        问:$('输入[名称=问]')VAL()
        周二:$('输入[名称=星期二])VAL()
        周三:$('输入[名称=周三])VAL()
        周四:$('输入[名称=周四])VAL()
        周五:$('输入[名称=周五])VAL()
        SAT:$('输入[名称=坐着])VAL()。
        SUND:$('输入[名称= SUND])VAL()
        adminname:$('输入[名称= adminname])VAL()。
        帐户ID:$('输入[名称=帐户ID])VAL()
        isadmin:$('输入[名称= isadmin])VAL()。

};

VAR isDisabled = $('输入[名称=传]')是(':禁用')。

如果(isDisabled == FALSE){
        myData.pass = $('输入[名称=传])VAL()。
}

$阿贾克斯({
    网址:PHP / editaccount.php',
    键入:POST,
    数据:myData的,
    成功:功能(数据){

        如果($('输入[名称= isadmin]')。VAL()== 1){
            $('输入[名称= accountsearch])VAL($('输入[名称=电子邮件]')VAL());
            $('输入[名称= accountsearch])提交()。
        } 其他 {
            $('输入[名称= accountsearch])VAL($('输入[名称=商家]')VAL());
            $('输入[名称= accountsearch])提交()。
        }

        警报(数据);
    }
});
});
 

解决方案

本code中的问题是,你在网上创建myData.pass变量如果isDisabled = false,但别的物体永远不会创造传球变量该目的,这里的solucion:

  VAR isDisabled = $('输入[名称=通]')是(':禁用');

如果(isDisabled == FALSE){
    myData.pass = $('输入[名称=传])VAL()。
} {ELES
//在这里阙ASIGN通的价值为空O操作空
myData.pass =;
}
 

和这里是完全code:

  $(文件)。在('提交','#editaccount',函数(事件){
    。事件preventDefault();

    myData的= {
            联系人姓名:$('输入[名称=联系人姓名]')VAL()。
            业务:$('输入[名称=商家]')VAL()。
            电子邮件:$('输入[名称=电子邮件]')VAL()。
            code:$('输入[名称= code])VAL()。
            电话:$('输入[名称=电话]')VAL()。
            priceband:$('输入[名称= priceband])VAL()
            地址:$('输入[名称=地址])VAL()。
            激活:$('输入[名称=活动])VAL()。
            问:$('输入[名称=问]')VAL()
            周二:$('输入[名称=星期二])VAL()
            周三:$('输入[名称=周三])VAL()
            周四:$('输入[名称=周四])VAL()
            周五:$('输入[名称=周五])VAL()
            SAT:$('输入[名称=坐着])VAL()。
            SUND:$('输入[名称= SUND])VAL()
            adminname:$('输入[名称= adminname])VAL()。
            帐户ID:$('输入[名称=帐户ID])VAL()
            isadmin:$('输入[名称= isadmin])VAL()。

    };

    VAR isDisabled = $('输入[名称=传]')是(':禁用')。

如果(isDisabled == FALSE){
    myData.pass = $('输入[名称=传])VAL()。
} {ELES
//这里你可以ASIGN通的价值为空O操作空
myData.pass =;
}

    $阿贾克斯({
        网址:PHP / editaccount.php',
        键入:POST,
        数据:myData的,
        成功:功能(数据){

            如果($('输入[名称= isadmin]')。VAL()== 1){
                $('输入[名称= accountsearch])VAL($('输入[名称=电子邮件]')VAL());
                $('输入[名称= accountsearch])提交()。
            } 其他 {
                $('输入[名称= accountsearch])VAL($('输入[名称=商家]')VAL());
                $('输入[名称= accountsearch])提交()。
            }

            警报(数据);
        }
    });
    });
 

I have been on this for a while now. For some reason my Password field does not arrive to my editaccount.php via ajax. Please confirm the Jquery is Correctly setup to add the pass to the variables to send if pass is NOT disabled. I would like to confirm ALL other fields DO SEND.

No one seems to know the fix to this. If check this if statement using alert() in console then yes it should work. But the pass never gets placed into the object myData. Why? How can i fix this? I know the password select is correct. if i remove the if statement then the pass is delievered.

JQuery:

$(document).on('submit', '#editaccount', function(event) {
event.preventDefault();

myData = {
        contactname: $('input[name=contactname]').val(),
        business: $('input[name=business]').val(),
        email: $('input[name=email]').val(),
        code: $('input[name=code]').val(),
        phone: $('input[name=phone]').val(),
        priceband: $('input[name=priceband]').val(),
        address: $('input[name=address]').val(),
        active: $('input[name=active]').val(),
        mon: $('input[name=mon]').val(),
        tue: $('input[name=tue]').val(),
        wed: $('input[name=wed]').val(),
        thu: $('input[name=thu]').val(),
        fri: $('input[name=fri]').val(),
        sat: $('input[name=sat]').val(),
        sund: $('input[name=sund]').val(),
        adminname: $('input[name=adminname]').val(),
        accountid: $('input[name=accountid]').val(),
        isadmin: $('input[name=isadmin]').val(),

};

var isDisabled = $('input[name=pass]').is(':disabled');

if (isDisabled == false) {
        myData.pass = $('input[name=pass]').val();
}

$.ajax({
    url: 'php/editaccount.php',
    type: "POST",
    data: myData,
    success: function(data) {

        if ($('input[name=isadmin]').val() == 1) {
            $('input[name=accountsearch]').val($('input[name=email]').val());
            $('input[name=accountsearch]').submit();
        } else {
            $('input[name=accountsearch]').val($('input[name=business]').val());
            $('input[name=accountsearch]').submit();
        }

        alert(data);
    }
});
});

解决方案

the problem with this code is that you online create the myData.pass variable if the isDisabled = false but else the object never create the pass variable to the object, here the solucion :

var isDisabled = $('input[name=pass]').is(':disabled');

if (isDisabled == false) {
    myData.pass = $('input[name=pass]').val();
}eles{
//here you que asign the value of pass to empty o to null
myData.pass = "";
}

and here is the the complete code :

    $(document).on('submit', '#editaccount', function(event) {
    event.preventDefault();

    myData = {
            contactname: $('input[name=contactname]').val(),
            business: $('input[name=business]').val(),
            email: $('input[name=email]').val(),
            code: $('input[name=code]').val(),
            phone: $('input[name=phone]').val(),
            priceband: $('input[name=priceband]').val(),
            address: $('input[name=address]').val(),
            active: $('input[name=active]').val(),
            mon: $('input[name=mon]').val(),
            tue: $('input[name=tue]').val(),
            wed: $('input[name=wed]').val(),
            thu: $('input[name=thu]').val(),
            fri: $('input[name=fri]').val(),
            sat: $('input[name=sat]').val(),
            sund: $('input[name=sund]').val(),
            adminname: $('input[name=adminname]').val(),
            accountid: $('input[name=accountid]').val(),
            isadmin: $('input[name=isadmin]').val(),

    };

    var isDisabled = $('input[name=pass]').is(':disabled');

if (isDisabled == false) {
    myData.pass = $('input[name=pass]').val();
}eles{
//here you can asign the value of pass to empty o to null
myData.pass = "";
}

    $.ajax({
        url: 'php/editaccount.php',
        type: "POST",
        data: myData,
        success: function(data) {

            if ($('input[name=isadmin]').val() == 1) {
                $('input[name=accountsearch]').val($('input[name=email]').val());
                $('input[name=accountsearch]').submit();
            } else {
                $('input[name=accountsearch]').val($('input[name=business]').val());
                $('input[name=accountsearch]').submit();
            }

            alert(data);
        }
    });
    });

这篇关于什么是错在这里?如果语句不工作在阿贾克斯,但工作在控制台?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆