创建一个新元素代替现有元素

时间:2012-08-13 16:32:17

标签: javascript jquery dom

我一直在创建一个日历框小部件(其中一个允许您选择日期的小div-popup)。

除了一个功能外,所有内容都完成了:当你创建对象时,你会发送一个字段(包含日期的字段);由于一组(非常)奇怪的要求,这个字段不能有一个易于阅读的格式(YYYYMMddhhmmss),因此我的脚本隐藏了该字段,并在其位置删除了具有类似样式的div。我没有找到一种方法可以整齐地将一个div作为一个兄弟放入该字段并且紧挨着它(而不是附加在父节点的末尾)。

如何通过ID作为参数获取字段,隐藏它,并将div放在同一位置?

如果我可以放弃它,在HTML中,直接在字段之后,我可以将它的CSS复制到DIV(或者新的字段,甚至),没有人会更聪明;对旧字段的引用仍然有效,人类可以轻松读取新字段,但是,我发现的最佳解决方案是让对象采用两个参数,一个用于目标字段,另一个用于目标div 。这不太理想。

jsFiddle:Full Project(我是这样,所以,对于小部件的名字非常抱歉。即使按照双关语标准也是如此。) jsFiddle:Simplified Example(包括选定的答案)

PS:

我在这个项目中只有一个真正的目标:最小化依赖关系。这个小部件正在取代我公司长期使用的旧小部件,随着时间的推移,这些小部件累积了十六个修改(每个修改在不同的文件中),并且至少需要样式表和现有插件。没有人真正知道它发生了什么。因为这个只需要jQuery,没有其他脚本,没有其他样式表......

......我想保持这种方式......

1 个答案:

答案 0 :(得分:0)

http://api.jquery.com/after/

$('yourelement').hide().after(newDiv)