Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/84.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
从不同的Javascript函数检索AJAX值 在一个更大的Web应用程序的简化示例中,考虑一个简单的登记表单:字段名称:用户名、FiSTNEX、LASSTND和寄存器按钮类型=“按钮”< /C> > /P>_Javascript_Jquery - Fatal编程技术网

从不同的Javascript函数检索AJAX值 在一个更大的Web应用程序的简化示例中,考虑一个简单的登记表单:字段名称:用户名、FiSTNEX、LASSTND和寄存器按钮类型=“按钮”< /C> > /P>

从不同的Javascript函数检索AJAX值 在一个更大的Web应用程序的简化示例中,考虑一个简单的登记表单:字段名称:用户名、FiSTNEX、LASSTND和寄存器按钮类型=“按钮”< /C> > /P>,javascript,jquery,Javascript,Jquery,AJAX调用: function checkUsername(uname) { if (uname != '') { $.ajax({ type: "POST", url: 'ajax/ax_all_ajax_fns.php', data: 'request=does_this_username_already_exist&username=' + un

AJAX调用:

function checkUsername(uname) {
        if (uname != '') {
            $.ajax({
                type: "POST",
                url: 'ajax/ax_all_ajax_fns.php',
                data: 'request=does_this_username_already_exist&username=' + uname,
                async: false,
                success:function(data){
//alert('Returned AJAX data: '+data);
                    if (data != 0) {
                        var existing_user = data.split('|');
                        var fn = existing_user[0];
                        var ln = existing_user[1];
                        focus_control = 'username';
                        $( '#alert' ).html( 'That username is already in use by ' + fn +' '+ ln +'. Please choose another.' );
                        $( '#alert' ).dialog( 'open' );
                    } //EndIf data<>0
                } //End success
            }); //End $.ajax
        } //End If this.val <> ""
}

返回false
放在#注册按钮单击函数的末尾,就在
检查表单()的正下方。按钮将继续触发表单提交。当您的javascript函数处理了这个问题时。

可能会在HTML表单标记的函数调用中放入
return false

<form>
    <bunchOfElements />
    <button onclick="checkUserName(); return false">Check Name </button>
</form>

当一个人回答自己的问题时,他既高兴又哭泣,但事情是这样的。解决方案是将checkUsername()函数作为输入参数发送给checkForm()函数,并使checkUsername()函数返回一个我们可以在checkForm()中检查的值

因此,我们必须修改
$('#register')。单击
函数即可:

$('#register').click(function() {
    var uname = $.trim($( '#username').val());
    checkForm(checkUsername(uname)); //<===========================
});
$(“#注册”)。单击(函数(){
var uname=$.trim($('#username').val());
checkForm(checkUsername(uname));//提交代码
$(“#cns_form”).submit();
在checkForm()函数中(见上文)。我应该将
返回false
放在该函数中的什么位置?
function checkForm() {
    var un = $.trim($( '#username').val());
    var fn = $( '#first_name').val();
    var ln = $( '#last_name').val()

    if (un=='' || fn=='' || ln=='') {
        $( '#alert' ).dialog({
            height: 200,
            width: 300,
        });
        $( '#alert' ).html( 'Fields marked with an asterisk are required.' );
        $( '#alert' ).dialog( 'open' );
    } else {
        $("#cns_form").submit();
    }
}
<form>
    <bunchOfElements />
    <button onclick="checkUserName(); return false">Check Name </button>
</form>
$(document).ready(function(){
    $("#buttonID").bind('click', function(){ 
        //do your thing
        checkForm();
    });
});
$('#register').click(function() {
    var uname = $.trim($( '#username').val());
    checkForm(checkUsername(uname)); //<===========================
});
function checkUsername(uname) {
        var returnVal = 0; //<=================================
        if (uname != '') {
            $.ajax({
                type: "POST",
                url: 'ajax/ax_all_ajax_fns.php',
                data: 'request=does_this_username_already_exist&username=' + uname,
                async: false,
                success:function(data){
//alert('Returned AJAX data: '+data);
                    if (data != 0) {
                        var existing_user = data.split('|');
                        var fn = existing_user[0];
                        var ln = existing_user[1];
                        focus_control = 'username';
                        $( '#alert' ).html( 'That username is already in use by ' + fn +' '+ ln +'. Please choose another.' );
                        $( '#alert' ).dialog( 'open' );
                        returnVal = 0; //<============================
                    } //EndIf data<>0
                } //End success
            }); //End $.ajax
        } //End If this.val <> ""
    return returnVal; //<==============================
}
function checkForm(exists) { //<============================
alert('sub checkForm(). value of exists: ' + exists);
    if (exists==9) { //<================================
        $( '#alert' ).html( 'That username is already in use' + existing +'. Please choose another.' );
        $( '#alert' ).dialog( 'open' );
    }else{ //<==========================================
        var un = $.trim($( '#username').val());
        var fn = $( '#first_name').val();
        var ln = $( '#last_name').val()

        if (un=='' || fn=='' || ln=='') {
            $( '#alert' ).dialog({
                height: 200,
                width: 300,
            });
            $( '#alert' ).html( 'Fields marked with an asterisk are required.' );
            $( '#alert' ).dialog( 'open' );
        } else {
            $("#cns_form").submit();
        }
    } //<===================================================
}