Ajax函数无法在提交的表单中使用

时间:2012-08-26 21:54:58

标签: jquery asp.net-mvc-3 forms getjson

提交表单后,我想用$ .getJson从服务器获取数据。

我写了这个:

$(function () {
    $('#websiteForm').submit(function (event) {
        $.getJSON('Home/checker', function (data) {
            alert(data);
        });
    });
})

我的表格:

<form action="" method="post" id="websiteForm">
    <input type="text" name="txtWebsite" id="txtWebsite" />
    <input type="submit" name="submit" />
</form>

但是当我点击提交表单时,没有任何内容显示出来。我在页面加载时测试了我的$.getJSON函数,它运行良好,所以我不知道为什么这个函数不起作用。

2 个答案:

答案 0 :(得分:2)

这应该使它工作

$(function () {
    $('#websiteForm').submit(function (event) {
        $.getJSON('Home/checker', function (data) {
            alert(data);
        });
        return false;
    });
});

没有return false;你提交停止javascript的表单(页面重新加载)

答案 1 :(得分:2)

替换由buttom提交的类型。

    $(function () {
        $('button').click(function (event) {
            $.getJSON('Home/checker', function (data) {
                alert(data);
            });
        });
    })

<form action="" method="post" id="websiteForm">
<input type="text" name="txtWebsite" id="txtWebsite" />
<input type="button" name="button" />
</form>

$(function () {
        $('#websiteForm').submit(function (event) {
            $.getJSON('Home/checker', function (data) {
                alert(data);
            });
            return false;
        });
    })

<form action="" method="post" id="websiteForm">
<input type="text" name="txtWebsite" id="txtWebsite" />
<input type="submit" name="submit" />
</form>