如果我改变输入类型,不会运行ajax ..?

时间:2015-02-28 08:59:52

标签: php jquery ajax forms

我有一个表单供用户使用jquery + Ajax更新他们的信息。到目前为止,一切都很好,但是当我更改输入类型="电子邮件"输入type =" text"在表单的fullname部分中,单击“更新”。它有错误???它不会在ajax中运行php文件。我没有看到导致此错误的任何连接?有人请问为什么?但是,如果我将fullname部分中的输入类型更改回" email"。有用!这太奇怪了!

这是我的表格:

 <div id="changeuserinfo_result"></div>
    <form role="form" method="post">
                <div class="form-group">
                <label>Fullname</label>
                <input type="text" class="form-control" id="changename" name="changename" value="<?php echo $_SESSION['name'] ?>">
                </div>
                <div class="form-group">
                <label>Password</label>
                <input type="password" class="form-control" id="changepass" name="changepass" value="<?php echo $_SESSION['pass'] ?>">
                </div>
                <button class="btn btn-default" id="changeuserinfo">Update</button>
                </form>

这是我的jquery代码:

$(document).ready(function(){
$('#changename').focus();  
$('#changeuserinfo').click(function(){ 
    var changename = $('#changename');  
    var changepass = $('#changepass');
    var changeuserinfo_result = $('#changeuserinfo_result'); 
    changeuserinfo_result.html('loading...');
    if(changename.val() == ''){ 
        changename.focus();
        changeuserinfo_result.html('<span class="errorss"> * Empty fullname</span>');
        return false;
    }
    else if(changepass.val() == ''){ 
        changepass.focus();
        changeuserinfo_result.html('<span class="errorss">* Empty password</span>');
        return false;
    }
    else {
        var UrlToPass = {changename:changename.val(),changepass:changepass.val()} ;
        $.ajax({ 
        type : 'POST',
        cache: false,
        data : UrlToPass,
        url  : 'changeuserinfo.php',
            success: function(responseText){ 
                if(responseText == 1){
                    $('#changeuserinfo_result').html('<span style="color:green"> Update OK</span>');
                }
                else{
                    $('#changeuserinfo_result').html('<span class="errorss"> Update fail. Try again</span>');
                }
            }
        });
    }
});
});

1 个答案:

答案 0 :(得分:0)

您的输入没有结束标记。

应为<input type="text"... />

还将页面的doctype设置为HTML5。

<!DOCTYPE HTML>
....
</html>