【问题标题】:Form values in a list item列表项中的表单值
【发布时间】:2010-06-11 06:08:17
【问题描述】:

这是我正在为我的工作制作的网站模型:http://dev.arm.gov/~noensie/dqhands/cgi-bin/explorer。我还是 Web 开发的新手,我需要帮助将表单值放在列表项中以传递到另一个页面。

本网站的目的我宁愿不详述,但就其基本用途而言,选择中间一栏中的参数进行请求,然后按“”将其添加到右侧栏中的列表中添加请求”按钮出现时。填充列表后,用户将提交选定的请求,这将根据选定的请求(或添加到列表中,同样的事情)将它们定向到另一个页面。

最后一句话是我遇到问题的地方。现在,右列列表中的每个请求都是

  • 元素,我为它们分配了需要传递到下一页的属性值。我尝试插入具有相同值的隐藏输入,但我仍然不确定如何利用它;我什至不确定使用隐藏输入是正确的方法。

    “提交请求”按钮也位于

    块之外。我打算使用 javascript 和 jQuery 来启用按钮来序列化
    块中的值,但我不知道该怎么做。

    继续看看我的 javascript 代码 (index.js) 并杀死我,或者,我的意思是,我的代码。它仍然非常基本且简短(约 260 行,很短吧?)。我会为这个问题寻求任何帮助(事实上,如果您发现任何其他问题或更好的实现方式,请继续提及);提示、建议、代码示例或您可以贡献的任何其他内容,我们将不胜感激。

    编辑:我使用 python 作为服务器端语言

  • 【问题讨论】:

      标签: javascript jquery python html


      【解决方案1】:

      您应该使用隐藏的输入字段。

      这取决于您喜欢使用哪种服务器端语言,但我会为您的隐藏字段选择以下命名方案:

      request[][site]
      request[][datastream]
      request[][facility]
      request[][date]
      

      “[]”表示法将数据放在一个数组中(至少对于 PHP)。因此,发布的数据可以迭代如下:

      foreach($_POST as $request) {
          $theSiteForThisRequest = $request["site"];
          $theDatastreamForThisRequest = $request["datastream"];
          $theFacilityForThisRequest = $request["site"];
          $theDateForThisRequest = $request["date"];
      }
      

      如果可以,请尝试在<form> 中获取提交按钮,但如果不能,您可以执行以下操作:

      $('#yourSubmitButton').bind('click', function () {
          $('#yourForm').submit();
      });
      

      【讨论】:

      • 再次查看样机站点;我实现了您编写的 jQuery 代码。现在的问题是没有任何隐藏的输入被序列化到 urlbar 中。 ???
      • 哦,没关系。我忘记了每个输入的 name 属性。谢谢,它奏效了!我希望能为你做一顿饭以表示感谢。 twitter.com/trinonsense/status/15880648397LOLZ
      • 由于声誉是 stackoverflow 的面包和黄油,我认为除了接受答案之外,还有很长的路要走,而不是午餐;)
      猜你喜欢
      • 1970-01-01
      • 2011-09-09
      • 1970-01-01
      • 2014-06-23
      • 1970-01-01
      • 2018-03-15
      • 1970-01-01
      • 2014-04-03
      • 1970-01-01
      相关资源
      最近更新 更多