有点卡住尝试在
Jquery中实现某些事情,并想知道是否有人可以协助..
我正在创建我自己的编辑就地功能,您点击编辑按钮,我的定义列表的内容被交换为预先填写数据的表单.类似于this
一切都很好,除了每个可编辑的部分(用户评论)被标记,并可以有多个标签,很像这样在stackoverflow …所以我的HTML输出每个评论的标签是如此
<dl id='comment_id'> <dt class="comment title">#i.getsTitle()#</a></dt> // Other info <dd class="categories"> <dl> <dt>Tags:</dt> <cfloop array="#i.getCategory()#" index="ii"> <dd class="category"><a href="">#ii.getsCategory()#</a></dd> </cfloop> </dl> </dd>
所以我将我的类别或标签嵌套在由循环控制的定义列表中.
目前为止,我试图做的是使用Jquery来获取这些配件的内容,以便当您点击编辑时,类别表单域将预先填写该注释的现有标签….
$('.edit').click(function(){ // Grab the text for all categories var sCategory = $(this).parents('dl').find('dd.categories dl dd.category').text(); //Build a form and prefill the category form field with the sCategory Variable form + '' // Other Data to build form form += '<dl><input name="sCategory" type="text" value="' + sCategory + '" /></dl>' // Show edit form prefilled with appropriate content $('dl#comment_id).(form);
这是有效的,但它显示了该条目的所有类别彼此相邻,没有空格….例如“JqueryColdfusionValidation”.想知道如何显示它是如此“JqueryColdfusionValidation”….我猜这个.each函数是必需的,但有点坚持如何实现
非常感谢
解决方法
Map()对这种事情很有好处.尝试这个:
var sCategory = $(this).parents('dl').find('dd.categories dl dd.category').map(function() { return $(this).text(); }).get().join(' ');