0

是否可以从表单中提取数据,例如:

<form action="/search/search" data-remote="true" data-type="json" id="search_form" method="get">

  <div class="input-group">
    <span class="input-group-addon">
      <input name="search[req][text][e]" type="hidden" value="false">
      <input id="search_req_text_e" name="search[req][text][e]" type="checkbox" value="true">
    </span>
    <input id="search_req_text_v" name="search[req][text][v]" type="text" value="">
  </div>

  <button id="fire_search" type="submit">Search</button>

</form>

我想到了jQuery的.submit()方法。但是如何从事件中提取和更改 url?

$('#search_flickr_panel_body form').submit(function(e) {
    console.log(e)
}

我在 Chrome DevTools 中没有看到打印的事件对象中的任何 url

我想删除未选中的文本字段。

也许 .attr('disabled', 'true') 将是删除的变体,但是如何更改数据,而不在文本字段中更改它,仅在提交 url 中?

更新:

我在表单中有超过 100 个这样的输入字段,所以即使只检查了一个,也只发送所有这些字段不是很好(太多无用的数据导致通信开销)

更新2:

我不仅希望能够从提交数据中删除未经检查的数据,还希望能够在提交之前更改此数据(例如,为值添加前缀,添加新参数),以便我可以影响结果 url(使用数据)。

4

1 回答 1

0

这将禁用所有未选中关联复选框的文本字段...

$(function() {
    $('#search_form').submit(function(e) {
        e.preventDefault();

        $(".input-group").each(function() {
            $(this).find("input:text").prop("disabled", !$(this).find("input:checkbox")[0].checked);
        });

        this.submit();

        $(".input-group input:text").prop("disabled", false);
    }
});

残疾人不应与表格的其余部分一起提交。

于 2013-10-01T11:48:44.193 回答