JQuery提交永远不会提交?

时间:2012-02-20 17:33:27

标签: javascript jquery ajax json

嘿伙计们我正在努力解决这个问题,但是我的问题甚至在我的函数内部提交了JQuery中的表单提交,我已经设置了几个console.log但它实际上从未实际 进入我的第一个功能,有人知道我做错了吗?

代码

 <script src='http://www.google.com/jsapi'></script>
 <script> google.load('jquery', '1.7.1'); </script>

 <script>
    console.log('outside function');
    $("form").submit(function() {
        console.log('submit happened');
        queryJsonServer($(this), "class/");
        return false;
    });

    function queryJsonServer(form, path) {
        var inputs = $('input:radio').serializeArray();
        var params = createAction("saveFormData", inputs);
        var url = path + "json.php";
        $.post(url, params, function(data) {
            console.log(data);
            $.("form").submit();
        });

    }
 </script>

HTML

<form>

<fieldset>
<legend>Select Orders</legend>

<table id='master'></table>

  </div> <!-- end input1 -->
    <div>
     <button name="select" type="submit" id="btnLoad" value="load">Refresh</button>
     <button name="select" type="submit" id="btnJson" value="down">Download JSON</button>
     <button name="select" type="submit" id="btnView" value="view">View/Enter</button>
    </div>
</fieldset>

</form>

2 个答案:

答案 0 :(得分:1)

您可能会尝试将函数包装在jQuery函数中,以便在DOM准备就绪时执行。

<script>
$(function(){
    console.log('outside function');
    $("form").submit(function() {
        console.log('submit happened');
        queryJsonServer($(this), "class/");
        return false;
    });

    function queryJsonServer(form, path) {
        var inputs = $('input:radio').serializeArray();
        var params = createAction("saveFormData", inputs);
        var url = path + "json.php";
        $.post(url, params, function(data) {
            console.log(data);
            $.("form").submit();
        });

    }
});
 </script>

答案 1 :(得分:0)

这一行:

$("form").submit(function() {

...在脚本运行时,将提交事件绑定到DOM 中的每个表单

自剧本以来:

  • 出现在<head>
  • 通过调用onready / onload / etc不会延迟

...绑定事件处理程序时没有表单元素。

移动脚本使其显示在表单元素之后(例如,在</body>之前),或者在就绪事件处理程序中调用该函数。