防止$ .post表单信息出现在url中

时间:2013-01-08 11:49:21

标签: jquery url post

我有一个会有一些个人资料的网站。当我使用$ .post时,邮件会附加到URL。因此,index.html在提交表单后变为index.html?message=Hey+what's+up%3F。如何防止此行为?

jQuery:

$(form1Var).submit(function() {                     
    $.post("submit.php", form1Var.serialize(), function(data) {
        var code = data.trim();
        console.log(code);
        $('[data-role="response"]').html('<span class="ui-btn-text">' + code + '</span>');
        $('[data-role="submit"]').load("submit_form.html");
    });
});

表格:

<form name="submit_message" action="" id="message_form">
    <div data-role="fieldcontain" class="ui-field-contain ui-body ui-br">
        <label for="textarea" class="ui-input-text">Message:</label>
        <textarea maxlength="10000" cols="40" rows="8" name="message"
    id="message" class="ui-input-text ui-body-null ui-corner-all ui-shadow-inset ui-body-c"></textarea>
    </div>
    <div data-theme="a" class="ui-btn ui-btn-corner-all ui-shadow ui-btn-up-a"
aria-disabled="false">
        <span class="ui-btn-inner ui-btn-corner-all">
            <span class="ui-btn-text">Submit</span>
        </span>
        <button type="submit" data-theme="a" name="submit" value="submit-value"
    class="ui-btn-hidden" aria-disabled="false">Submit</button>
    </div>
</form>

2 个答案:

答案 0 :(得分:4)

那是因为表格通常也会提交。

更改

$(form1Var).submit(function() {    

$(form1Var).submit(function(e) {
    e.preventDefault();    

答案 1 :(得分:0)

这不是因为jQuery发布。

您必须阻止默认操作,或者您必须在提交表单后说return false