【问题标题】:assign value of form field as URL parameter将表单字段的值分配为 URL 参数
【发布时间】:2010-09-30 00:36:58
【问题描述】:

当用户点击 {ENTER} 或单击提交按钮时,我需要从表单字段中获取用户输入的值并将其作为 URL 参数附加。我是 DreamWeaver CS5 的新手,我有一个项目面临完成的压力。

【问题讨论】:

    标签: coldfusion dreamweaver flash-cs5


    【解决方案1】:

    我能想到三种四种方法,只有一种两种是ColdFusion解决方案。

    如果您在 FORM 标记中使用 method="get",则所有表单字段及其值都将以典型的 key=value 对附加到操作 URL。

    第二个涉及使用 JavaScript 更改 FORM 标记的 action 属性的值,以响应 onclick 事件(或者可能是 onsubmit)。

    ColdFusion 方法将使用 CFLOCATION 重定向到所需位置。换句话说,您希望以 page2.html 结尾,因此将表单操作设为 page1.cfm 并在该 CF 模板中添加 <cflocation url="page2.html?urlvar=#form.formvar#">

    更新(由 Ben Doom 提供):在表单的操作页面上,您可以使用 StructAppend() 函数将 URL 范围添加到 FORM 范围。

    您能稍微扩展一下您的问题吗?也许我们可以为您提供更完整的答案。

    【讨论】:

    • 此外,如果 OP 可以控制操作页面,他们可以使用 structAppend() 将表单范围的内容添加到 url 范围。
    【解决方案2】:

    就像@Al Everett 所说,

    只需要更改form属性中的method =“get”而不是“post”。

    【讨论】:

      【解决方案3】:

      您的简单 HTML 代码应如下所示:

      <html>
          <head></head>
          <body>
              <cfif structKeyExists(form,"submit")> <!--- To ckeck if form is submiited --->
                  <cfoutput>Value = #url.mytextbox#</cfoutput>
              </cfif>
              <form name="myform" method="get" action=""> <!--- action is blank to submit on same page --->
                  <input type="text" name="mytextbox" />
                  <input type="submit" name="submit" value="submit">
              </form>
          </body>
      </html>
      

      【讨论】:

      • 我知道我很偏执,但请使用#htmlEditFormat(url.mytextbox)# :)
      • 但如果设计师开始使用 ColdFusion 也没关系!
      • 如果您使用了 action="get",则 "submit" 不会存在于 FORM 范围内。它也将在 URL 范围内。
      猜你喜欢
      • 2021-01-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-08-12
      • 2016-03-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多