¿Cómo unir dos objects de elemento jQuery? .add () no funciona

Estoy dentro de una function y necesito devolver un object jQuery con dos elementos. Dentro de la function que tengo, por ejemplo:

function getInput() { $hiddenInput = $('<input type="hidden">'); //(other code) $select = $('<select></select>'); //(other code) $hiddenInput.add($select); return $hiddenInput; } 

Y afuera tengo:

 $myContainer.append(getInput()); 

El resultado esperado sería:

 <div id="container"><input type="hidden"><select></select></div> 

Pero lo único que obtengo ahora con .add () es solo el elemento de input y no el de selección. ¿Cómo puedo unir esos dos elementos de formulario en el retorno de la function? Si no es posible con jQuery, entonces con JavaScript simple. Muchas gracias.

add () crea (y devuelve) un nuevo object jQuery que es la unión del set original y lo que le está agregando, pero todavía está devolviendo el original en su function. Parece que has querido hacer esto en su lugar:

 function getInput() { $hiddenInput = $('<input type="hidden">'); //(other code) $select = $('<select></select>'); //(other code) return $hiddenInput.add($select); } 

Puedes usar

 $hiddenInput.after($select); 

Eso colocará el $select después de $hiddenInput , logrando lo que desea get.

Puedes usar lo siguiente:

 this.MergejQueryObjects = function(arrayOfJqueryObjects) { return $($.map(arrayOfJqueryObjects, function (el) { return el.get(); })); }