将文本字段复制到输入字段

时间:2013-09-13 13:02:54

标签: jquery input copy

我正在尝试使用一系列输入并使用带有文本列表的按钮替换它们。我意识到它可以通过使用ID轻松实现,但我必须考虑到它可以扩展(意味着可以是1或可能是5)这一事实。我开始沿着.each循环的道路迭代输入并获取它们的值,但是我如何迭代文本值并将它们放在正确的输入中?

这是我被困的地方:

jQuery('.copy-btn').on("click", function (e) {
var selector = "[class^=span]";
var $this = jQuery(this);
var $pristine = jQuery(".field-item");
var $first = $this.closest(selector).prev(selector);
var $second = $this.closest(selector).next(selector);

if ($first.find("div").hasClass("field-name-field-mg-features-list")) {
    var one = $first.find(".form-type-textfield input.text-full").each(function () {
        var $this = jQuery(this);
    });
    var two = $second.find(".field-item").each(function () {
        var $this = jQuery(this);
    });
    var $input = $this.find(".form-type-textfield input.text-full");
    var $text = $this.find(".field-item");
} else {
    $first.find("input").val($second.find($pristine).text());
}
e.preventDefault(e);

});

我也不认为这是达到我想要的行为的最佳做法,有人能指出我正确的方向吗?

http://jsfiddle.net/nmfurr/nA37d/250/

1 个答案:

答案 0 :(得分:0)

如果它们对应于dom上的索引位置,我认为你可以做到

jQuery('.copy-btn').on("click", function (e) {
   var count = $("field-name-field-mg-features-list").size();
   var fields = $("form-type-textfield input.text-full");
   var text = $("field-item")
   var x = 0;
   for (x=0;x++;x<count){
       fields[x].val(text[x].text())
   }
   e.preventDefault(e);

});