代码之家  ›  专栏  ›  技术社区  ›  Nealv

Drupal jquery提交表单,不带提交按钮

  •  1
  • Nealv  · 技术社区  · 14 年前

    我有一个Drupal表单,当您从selectlist(一种快速搜索selectlist)中选择一个选项时,我使用jquery发布它。

    问题是,当我通过单击按钮提交时,它是有效的。 当我使用jquery,并且按钮在表单中(隐藏或不隐藏)时,它可以工作。 当我使用jquery和rmove按钮时,发布就完成了,但是不调用“form_submit”函数,它只是刷新我的页面。

    有人能解释这种行为吗?

    @编辑:

    奇怪的是,我在想:因为你有多个按钮,也许你也必须将按钮作为一个参数发布。但当我浏览这些帖子时,按钮不包括:

    Parametersapplication/x-www-form-urlencoded
    form_build_id   form-138a553d76a89c82e09a231a2f55e8a9
    form_id duration_search_form
    keyword 103
    Source
    Content-Type: application/x-www-form-urlencoded Content-Length: 92 keyword=103&form_build_id=form-138a553d76a89c82e09a231a2f55e8a9&form_id=duration_search_form
    

    尽管如此,这是一个jquery提交函数和一个隐藏的按钮,它可以工作。

    1 回复  |  直到 14 年前
        1
  •  0
  •   tamasd    14 年前

    这是因为您还必须发布提交按钮的值。下面是我在BubbleTimer-6.x-2.x中的一个例子:

    var formdata = $('#myform').serialize();
    formdata += '&op=' + escape($('input[type=submit]', $('#myform')).val());
    $.ajax({
      type: 'post',
      url: $('myform').attr('action'),
      data: formdata
    });
    

    完整文件: http://drupalcode.org/viewvc/drupal/contributions/modules/bubbletimer/bubbletimer_ahah.js?view=markup&pathrev=DRUPAL-6--2

    推荐文章