窗体到窗体jQuery

窗体到窗体jQuery

问题描述:

我一直在研究一段代码。我拥有大量的代码,但实际的表单转移正在抛弃我。窗体到窗体jQuery

$("#shrimpfrm").children().map(function() { 
    var child = $(this); 
    var value = child.val(); 
    var container = $("#shrimpMaster"); 
    var field = $("<input />"); 

    if (child.is(":select")) { 
     $(container) 
      // THIS IS WHERE I'M LOST 

    } 

    return null; 
}); 

我需要在#shrimpfrm添加任何选择框的值到一个文本框#shrimpMaster。文本框实际上必须创建在#shrimpMaster我相信我有适当的功能集,并且所有变量都已到位,我只是不知道从哪里开始。任何帮助,将不胜感激。 谢谢。

没有看到您的特定HTML,以及不知道这两种形式之间的关系,我建议:

$('#shrimpfrm select').each(
    function(){ 
     $('<input />').val($(this).val()).appendTo($('#shrimpMaster')); 
    }); 

JS Fiddle demo

这会发现#shrimpfrm形式之内的所有的select元素,创建一个input(默认为type="text")与从当前select值,然后它添加到#shrimpMaster形式。

响应这样做是为了给一个select做了更改:

$('select').change(
    function() { 
     $('#shrimpMaster input:text').remove(); 
     $('#shrimpfrm select') 
      .each(
       function(){ 
        $('<input />') 
         .val($(this).val()) 
         .appendTo($('#shrimpMaster')); 
       }); 
    });​ 

JS Fiddle demo

+0

谢谢指点先生! – 2012-04-13 17:29:38

以下内容是否适合您的用途?

$("#shrimpfrm").children().map(function() { 
    var child = $(this); 
    var value = child.val(); 
    var container = $("#shrimpMaster"); 
    var field = $("<input />"); 

    if (child.is(":select")) { 
     $(container).text(value); 
      // THIS IS WHERE I'M LOST 
    } 
    return null; 
}); 

所以你需要创建在#shrimpfrm每个select一个文本框?如果是这样,您可以使用append将新元素添加到#shrimpMaster

http://api.jquery.com/append/http://api.jquery.com/appendTo/

$('#shrimpfrm select').each(function() { 
    $('#shrimpMaster').append($('<input />').val($(this).val())); 
});