我在查看我需要的解决方案时遇到了问题。我正在工作的网站上有一个选择菜单,客户端希望能够选择一个名为“创建新原点”的选项,然后会弹出一个JS窗口,其中包含一个空白字段供用户使用输入新的来源。
提交此表单后,数据库将会更新,选择菜单现在将显示此项目,而不会对页面进行全面刷新。
数据库方面的所有内容都已准备就绪,99%的Coldfusion也是如此。
以下是相关表单字段的片段:
<p class="_30NP" align="right">
<label>Origin </label>
</p>
<p class="_20NP">
<cfselect
name="Origin"
id="Origin"
query="Origin"
display="description"
value="code"
required="yes">
<option value="new">New Origin</option>
</cfselect>
</p>
这是CFQUERY:
<CFQUERY DBTYPE="Query" NAME="Origin">
SELECT Code, [Description]
FROM ZCODES WHERE CODE = 0
UNION ALL
SELECT Code, [Description]
FROM ZCODES
WHERE FieldName = 'Origin'
ORDER BY 1
</CFQUERY>
这是一个非常简单的问题,可能是一个非常简单的答案,我只是很少接触AJAX。
如何在不完全刷新页面的情况下提交表单(弹出窗口)并刷新选择列表?
答案 0 :(得分:1)
我会使用像jQuery这样的javascript库来处理你的ajax。
点击按钮后,使用$.get(),$.post()或$.ajax()与服务器进行通信。每个人都会提供回复。响应类型取决于您。您可以返回JSON并解析它,或者您可以返回直接的HTML。我可能只是简单地返回html来快速轻松。
<cfoutput query = "...">
<option value = "...">...</option>
</cfoutput>
获得结果后,使用$.html()更新select's
选项。
答案 1 :(得分:0)
您的问题与stackexchange.com网站上的另一个问题非常相似。我想你可以在这里找到一些好消息。