动态追加值而不加载页面

时间:2012-11-23 03:49:30

标签: javascript jquery ajax expressionengine

我想通过附加两个不同的值来创建变量值而不重新加载页面

代码:

{exp:safecracker channel="blending_log"  return="sthome/blending/ENTRY_ID"}
<h3>Select and enter data</h3>

{!--------Receive data to create value--------}
<input type="hidden" name="title" value="" />
<br /><br />
Organic Or Conventional:
{field:org_con}

Agent Number:
{field:agent_number}

{!-----END Receive data to create lot number-------}

字段类型有机或常规是选择框。 用户可以选择O(有机)OR C(常规) 代理编号是文本字段用户输入类似018的内容。 一旦用户从有机或常规中选择O OR C. 并输入代理编号,它应该在隐藏字段中附加值。

例如:

<input type="hidden" name="title" value="O018" />

OR

<input type="hidden" name="title" value="C018" />

这应该在没有页面重新加载的情况下发生

我用Google搜索并尝试了一些JavaScript和Ajax代码。 但从不工作。 对不起,我是JavaScript和Ajax Noob。

请帮助。

3 个答案:

答案 0 :(得分:1)

<input type="hidden" name="title" value="C018" id="newVal"/>

这可以用来设置值

document.getElementById("newVal").value="newValue";

答案 1 :(得分:1)

给隐藏字段一个Id例如:

<input type="hidden" name="title" value="" id="hiddenField"/>

然后我会假设您希望隐藏字段的值在填写数字之后 (尽管您可以在将值添加到隐藏字段之前检查两者是否都已填写)

**jQuery**
$('#Id_of_agent_number_HTMLElement').change(function () {
    $('#hiddenField').val($('#Id_of_org_con_HTMLElement').val() + $(this).val());
});

答案 2 :(得分:0)

最简单的解决方案是使用SafeCracker's dynamic_title parameter

{exp:safecracker channel="blending_log" return="sthome/blending/ENTRY_ID" dynamic_title="[org_con][agent_number]"}

然后,您可以删除隐藏的“标题”输入。