Javascript问题重新表单重置

时间:2013-04-10 20:37:31

标签: javascript forms reset

我遇到了一个小的javascript表单问题,提交完美,提示成功消息但无法重置表单。在您手动刷新页面之前,数据仍然可见。

代码是:

jQuery(document).ready(function(){

    $('#contactform').submit(function(){

        var action = $(this).attr('action');

        $("#message").slideUp(750,function() {
        $('#message').hide();

        $('#submit')
            .after('<img src="images/ajax-loader.gif" class="loader" />')
            .attr('disabled','disabled');

        $.post(action, {
            name: $('#name').val(),
            email: $('#email').val(),
            phone: $('#phone').val(),
            subject: $('#subject').val(),
            comments: $('#comments').val(),
            verify: $('#verify').val()
        },
            function(data){
                document.getElementById('message').innerHTML = data;
                $('#message').slideDown('slow');
                $('#contactform img.loader').fadeOut('slow',function(){$(this).remove()});
                $('#submit').removeAttr('disabled');
                if(data.match('success') != null);

            }
        );

        });

        return false;

    });

});

我想知道我是否可以添加重置命令,但由于我的java有限,我不知道在哪里?非常感谢任何指针或建议。提前谢谢。

2 个答案:

答案 0 :(得分:2)

您可以在if (data.match...)内添加,如下所示:

if (data.match("success") != null){
   $('#contactform')[0].reset();
}

答案 1 :(得分:0)

您需要手动清除/重置表单。 当您使用JQuery发送请求时,它与更改浏览器位置的表单操作不同。

成功发送数据后,只需调用RESET即可。

有关详情,请参阅:http://www.w3schools.com/jsref/met_form_reset.asp

另一方面,如果您想将表单值重置为默认值,则可以指定您可以创建一个函数,例如:

function resetFormValues() 
{ 
$('#name').val('name'); 
$('#email').val('email'); 
etc..
} 

并调用resetFormValues();在您的代码中,例如:

if (data.match("success") != null){
   resetFormValues();
}