2011-02-05 127 views
1

我有一個名稱爲first_name[120](預定義鍵)的文本輸入,我想通過單擊按鈕將值複製到另一個first_name[different predefined key]字段。如何使用jQuery將一個數組元素值複製到另一個數組元素值

表單中可能還有其他first_name[different predefined key]字段,所以我需要靈活性來爲其餘的工作做好準備。有什麼建議麼?

編輯:

對不起,我想我需要提供一些信息。

該表單有一個用於禮品收件人信息的字段列表。表格中可能列出了多個禮物,每個禮物都有自己的字段用於輸入禮物收件人的信息。基本上,我正在嘗試爲表單中的後續禮品收件人字段創建「從上面複製信息」功能。

編輯2:

這是我的解決方案,它的工作原理。請儘可能提出改進建議。它實際上綁定到一個包含所有禮物列表的下拉列表。因此,代碼根據下拉的ID(例如123 | 130)知道要從哪個部分獲取信息以及從哪裏刪除信息。

$('.copy_info').live('change', function(){ 

    var ids = $(this).val().split('|'); 

    var from = ids[0]; 
    var to = ids[1]; 

    $('#form_fields-' + from + " :input").each(function(){ 

     var name = $(this).attr('name'); 
     var new_name = name.replace(/[\d+]/,to); 

     $('#form_fields-' + to + ' input[name="' + new_name + '"]').val($(this).val()); 

    }); 

}); 
+1

相關... http://stackoverflow.com/questions/1865340/jquery-selector-array – jondavidjohn 2011-02-05 04:40:59

回答

2
$('button').click(function() { 
    $('input[name="first_name[xxx]"]').val($('input[name="first_name[120]"]').val()); 
}); 

xxx是要複製120到FIRST_NAME鍵的數量。

還記得你可以訪問用this點擊的特定按鈕,或者用$(this)將它包裝在一個jQuery對象中,以更具體地定位你選擇操作的輸入。

+0

謝謝。剛剛編輯了更多信息的問題。我不想在選擇器中硬編碼字段名稱。 – pistolshrimp 2011-02-05 04:57:58

相關問題