1

我对 ajax 比较陌生,我正在使用 jquery mobile。我正在做的是弹出窗口中的登录表单,我必须编写代码才能使两者都工作,但我只是不确定如何连接两者以使其真正起作用。

这是弹出的html

<a href="#popupLogin" data-rel="popup" data-position-to="window" data-role="button" data-inline="true" data-icon="check" data-theme="a" data-transition="pop">Login</a>
        <div data-role="popup" id="popupLogin" data-overlay-theme="a" data-theme="a" class="ui-corner-all">
        <form id="popuplogin">
            <div style="padding:10px 20px;">
                <h3>Please Login</h3>
                <label for="un" class="ui-hidden-accessible">Username:</label>
                <input type="text" name="user" id="un" value="" placeholder="username" data-theme="a">
                <label for="pw" class="ui-hidden-accessible">Password:</label>
                <input type="password" name="pass" id="pw" value="" placeholder="password" data-theme="a">
                <button type="submit" data-theme="b" data-icon="check">Sign in</button>
            </div>
        </form>
        </div>

这是我的脚本。我的问题是如何将两者连接在一起。

$("#popupLogin").submit(function() {
$.ajax({
type: "POST",
url: "submiturl",
data: $("input#name").val(),
success: function(html) {
  // show the confirmation inside the popup
}
})
})

老实说,我什至不确定我是否完全理解 ajax,但如果有人可以帮助我理解它。这将不胜感激。

4

3 回答 3

1

尝试这样的事情。

<button type="button" data-theme="b" data-icon="check" data-inline="true" onclick="validLogin()">Sign in</button>

通过添加 onclick 您调用您的 javascript 函数。IE 连接两段代码

然后在你的javascript中做这样的事情。

function validLogin(){
var uname=$('#uname').val();
var password=$('#password').val();
$.ajax({
    type: "POST",
    url: "scripts/processed.php",
    data: {"uname": uname, "password":password},
    cache: false,
    success: function(result){
        var result=trim(result);
        if(result=='correct'){
            window.location='index.php';
            $('#loginForm').submit();
        }else{
            $("#loginerror").html(result);
            return false;
        }
    }
});
}

那应该做你想做的事。

于 2014-03-27T10:15:03.863 回答
0

看到这一行:

<a href="#popupLogin" data-rel="popup" data-position-to="window" data-role="button" data-inline="true" data-icon="check" data-theme="a" data-transition="pop">Login</a>

<form id="popuplogin">

更改<a href="#popupLogin"<a href="#popuplogin"

于 2013-10-18T04:19:20.057 回答
0

您的弹出代码看起来正确。我会将您的表单代码更改为

<form id="formLogin" action="@submitUrl" method="post">

然后您的提交按钮将提交表单数据,而您无需执行任何 javascript。

于 2013-10-18T11:45:20.823 回答