1

可能重复:
使用 jQuery 将表单数据转换为 JS 对象

我需要让我的用户登录到外部网站,但是有一个问题,这个网站只处理 json-data POST 值,例如。{“用户名”:“用户”,“密码”:“12345”}

<form action="https://external.com/login" method="POST">
<input name="username" value="user" />
<input name="password" value="12345" />
<input type="submit" />
</form>

以上仅发送平均 key=value 数据,我如何使用 POST json-data 到外部 https?

4

1 回答 1

0

这是一个简单的jquery示例,使用jQuery.ajax()

HTML:

<form action="https://external.com/login" method="POST" onsubmit="return postJson(this)">
<input name="username" value="user" />
<input name="password" value="12345" />
<input type="submit" />
</form>

JQ:

function postJson(form) {
    var action = $(form).attr('action');
    var user = $('[name="username"]', form).val();
    var pass = $('[name="password"]', form).val();

    console.log('action=' + action + ', user=' + user + ', pass=' + pass);

    $.ajax({
        url: action,
        type: 'POST',
        data: JSON.stringify({ username: user, password: pass }),
        success: function(data, status) {
            // do something after login
            console.log('success');
        },
        error: function() {
            console.log('error');
        }
    });

    return false;
}

JSFiddle

于 2013-02-01T12:48:58.037 回答