Jquery数组appendTo通过函数

时间:2012-11-02 13:25:14

标签: jquery arrays appendto

尝试将数组值附加到div,这部分工作,这里没有错,但是我需要格式化数组值,只需在appendTo()jquery之前通过函数传递值就可以了功能,虽然不知道这是否可行......

有一长串清单:$(c[3]).appendTo('#output_div_id1');

我想要实现的目标是$( number_format(c[3])).appendTo('#div');

这似乎不起作用。想法我怎么能做到这一点?

3 个答案:

答案 0 :(得分:0)

您可以在添加条目之前格式化条目

OR

您可以尝试修改jQuery原型:

$.fn.numberFormat = function () {
    var htmlStr = $(this).html();

    //do stuff to the html (or whatever you're changing)

    return $(this).html(htmlStr);
};

然后像:

一样使用它
$(c[3]).numberFormat().appendTo('#div");

答案 1 :(得分:0)

或者只使用append()。 http://api.jquery.com/append/

示例:

<div id="element">Hello</div>
$('#element').append(function(index, html) {
    return ' world!';
});

答案 2 :(得分:0)

给定一个数组a和一个嬗变函数f,下面的代码会将数组的每个元素附加到给定的选择器,并通过该函数传递:

$.fn.append.apply($('#div'), $.map(a, f));

所以,在你的情况下给出:

function number_format(n) {
    return n.toFixed(2);  // modify to suit
}
你会用:

$.fn.append.apply($('#div'), $.map(c, number_format));

,结果是c的每个元素都会传递给number_format,然后然后会附加到div上,而原始数组则保持不变。