Javascript 用于多个字段的单个jQuery图像选择器
我正在试图找出解决这个问题的方法,如果有人不能提供一个直接的解决方案,我会从概念方法中受益,这样我就可以尝试自己解决它 我有一个带有文本表单字段的页面,每个字段都有一个相应的Javascript 用于多个字段的单个jQuery图像选择器,javascript,php,jquery,Javascript,Php,Jquery,我正在试图找出解决这个问题的方法,如果有人不能提供一个直接的解决方案,我会从概念方法中受益,这样我就可以尝试自己解决它 我有一个带有文本表单字段的页面,每个字段都有一个相应的IconId。页面上将显示小图像图标(PNG)列表。目标是当用户单击其中一个文本框时,它将激活100个图标,用户可以选择1个图标,将IconId添加到相应的隐藏字段中。当用户单击已分配了IconId的字段或在隐藏字段中的字段时,他们可以选择不同的图标,并将IconId替换掉。页面将通过PHP作为标准表单post提交,页面框架
IconId
。页面上将显示小图像图标(PNG)列表。目标是当用户单击其中一个文本框时,它将激活100个图标,用户可以选择1个图标,将IconId
添加到相应的隐藏字段中。当用户单击已分配了IconId
的字段或在隐藏字段中的字段时,他们可以选择不同的图标,并将IconId
替换掉。页面将通过PHP作为标准表单post提交,页面框架将是Bootstrap3W/jQuery1.11
下面是一个演示用例的小提琴:您可以为每个输入字段添加一个唯一的id(例如,迭代输入-1、输入-2等)。然后,可以将当前选定输入字段的id存储到脚本的变量中。
单击图标时,通过保存的变量/id选择输入字段,并更新其相应的图标id隐藏字段。以下是使用数据属性的简单示例 我并没有在这里实际使用图标,也没有为了演示而使用隐藏字段,但它应该很容易根据您的需要进行更改
var lastFocus=null;
$(document.body).on(“焦点”,“输入”,函数(){
lastFocus=这个;
});
$(document.body)。在(“单击”,“数据图标id]”上,函数(){
$(lastFocus.val(this.dataset.iconId.focus());
});代码>
单击每个LI,您将在最后一个聚焦的输入字段中获得id
图标1
- 另一个图标(2)
- 是三个
使用数据属性,。。例如data icon id=“1”
,然后您可以提取它。@Keith ok,但是如果我有多个字段,如何强制图像更新当前选定的字段?如果只是一个字段和一堆图像,那么直接单击图像,更新文本字段。但我需要知道选择了哪个字段集,这样我才能在单击所需图像时更新相应的IconId字段。请在您的问题中在此发布相关的“”代码,这样,当外部站点(如JS Fiddle)倒塌、死亡时,该问题仍然有用,重新组织或删除内容。如果我有多个字段,请更新当前选定的字段?
此处需要的是委派事件,。。如。。如果您使用了数据属性,则可以使用$(容器)将所有字段作为目标。在(“单击”,“数据图标id]”上,函数(){}
这很有帮助,而且我能够使它工作;我只在上面的示例中遇到了3个输入的情况。我不能使用全局选择器$(“输入”)
它需要特别是活动的输入。
您能更新您的代码片段以反映这一点吗?@JeffSolomon我已经更新以处理多个输入,我基本上会跟踪最后一个重点输入。砰!是的,很好。谢谢。