我正在尝试让这个表单等待ajax响应并在提交之前更新表单值。为什么不工作?

时间:2016-03-27 22:12:07

标签: javascript jquery json ajax forms

你会在代码中看到这个,但我的计划是用常规按钮替换“submit”按钮,添加一个发出json请求的click事件,并在回调中调用表单上的submit() json请求,但它似乎没有工作。 POST数组完全是空的。以下是我的代码的相关部分。

<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="POST" id="postForm">
    //There are some other text fields and stuff here
    <input type="hidden" name="isSelfPost" id="isSelfPost"/>
    <input type="button" name="submit" id="submitButton" />
</form>

<script>
    $("#submitButton").click(function submitform()
    {
        var URL = $("#postURL").val();
        if (URL === '')
        {
            document.write('You need to enter a URL.');
            return false;
        }
        var jsonURL = URL + ".json?jsonp=?";
        $.getJSON(jsonURL, function(results){
            var postData = results[0].data.children[0].data;
            var isSelf = postData.is_self;
            $('#isSelfPost').val(isSelf);
            $("#postForm").submit();
        });
    });
</script>

如果重要的话,json来自reddit。请求工作正常,它似乎不想提交。我不认为它是抢先提交或任何东西,因为POST数组是完全空的。

感谢阅读。

编辑:好吧,我明白了。我唯一的问题是我的按钮的“名称”属性被称为“提交”。因此,当我将“submit()”称为“我的表单”时,它被解释为对按钮的引用,而不是提交函数。

0 个答案:

没有答案