如何在不使用提交的情况下发帖

时间:2009-12-29 12:32:39

标签: php jquery html json

我想发布表单,但不想使用Submit方法。如果我使用JQuery,如何处理Form输入控件?

4 个答案:

答案 0 :(得分:2)

只需创建一个由您想要的任何事件触发的函数,例如:(在另一个问题中找到此代码)

function example() {
// get all the inputs into an array.
    var $inputs = $('#myForm :input');

    // not sure if you wanted this, but I thought I'd add it.
    // get an associative array of just the values.
    var values = {};
    $inputs.each(function() {
        values[this.name] = $(this).val();
    });
}

之后,您可以使用输入值执行任何操作。您可能需要考虑使用更高级的处理,但是有很多插件可以提供这种功能。

答案 1 :(得分:2)

您可以使用jQuery AJAX .post function函数。一个例子(未经测试,但应该工作):

<script>
function postit(obj) {
  var data = $(obj).serialize();
  $.post($(obj).attr("action"), data, function() {
    //Put callback functionality here, to be run when the form is submitted.
  });
}
</script>
<form action="posthandler.php" onsubmit="postit(this); return false;">
<input type="text" name="field">
<input type="submit">
</form>

另请阅读serialize

(当然,在使用此代码之前,您需要在代码中包含jQuery库。)

答案 2 :(得分:1)

我不确定我是否正确理解了这个问题。

如果您不想使用submit(),可以使用Ajax通过jQuery.post()执行相同的操作。主要区别在于您必须自己从输入字段构建键值数据,而不是浏览器自动执行,并且您不会刷新页面。

答案 3 :(得分:1)

Post功能或Load功能都可以使用。

@PRK您是在尝试在页面加载时还是在用户点击按钮时发布表单?

加载(网址,参数,回调)

例如:

$("#loadItHere").load("some.php", {somedata: 1});