2010-05-14 27 views
6
$().ready(function() 
    { 
    $("#add").click(function() 
    { 
    var vals = $("#txtaddfeature").val(); 
    if(vals !='') 
     $('#FeatureLists').prepend('<option value="' + vals + '" selected="selected">' + vals + '</option>'); 
    $('#txtaddfeature').val(''); 
    }); 
    }); 

Ok después de añadir el valor a la lista de selección que el anteriorjQuery dinámica añadiendo campo oculto

$('#FeatureLists').prepend('<option value="' + vals + '" selected="selected">' + vals + '</option>'); 

Quiero crear un campo oculto dinámico con id = Vals definidos anteriormente y configurarlo valor a valor introducido en el cuadro de texto. ¿cómo puedo hacer que

+0

Tema desactivado - ¿Qué versión de jQuery estás utilizando? '$(). ready (...)' probablemente no debería usarse si tiene jQuery 1.4 ya que '$()' ya no devuelve un objeto jQuery con el 'document'. En su lugar, haga '$ (document) .ready (...)', o simplemente '$ (function() {...})'. – user113716

+0

ok thx Voy a revisar mi código y cambiarlo – maztt

Respuesta

20

No podría decir exactamente lo que quería. Parece que desea que el ID y el value del nuevo input ocultos sean el valor de vals. ¿Está bien?

var $hiddenInput = $('<input/>',{type:'hidden',id:vals,value:vals}); 

Luego lo puede agregar donde desee.

$hiddenInput.appendTo(selector); 

EDIT:

Para mayor claridad, selector es la referencia al elemento en el que desea añadir a su nueva entrada.

Si desea anexar a la etiqueta del cuerpo, hacer:

$hiddenInput.appendTo('body'); 

Si desea añadir a un elemento con la clase someClass, hacer:

$hiddenInput.appendTo('.someClass'); 
+0

$ hiddenInput.appendTo (selector); , ¿cuál es el selector aquí – maztt

+1

Lo sentimos, 'selector' es simplemente el elemento donde desea agregar la entrada. Por ejemplo, si escribe 'cuerpo', agregaría la entrada oculta al cuerpo. Actualizaré mi respuesta. – user113716

+1

¿Por qué el '$' en hiddenInput? –

1

usted puede hacer como:

$("input").attr("type", 'hidden').val($('#txtaddfeature').val()).appendTo('selector_here'); 
2

Comprobaría para ver si estaba en la página primero, luego agrega.

function SetHiddenInput(val) 
{ 
    var $txtaddfeaturehidden == $("#txtaddfeaturehidden"); 

    if ($txtaddfeaturehidden.length == 0) 
    { 
     $("input").attr({ 
      id : "txtaddfeaturehidden", 
      type : "hidden", 
      value : $('#txtaddfeature').val() 
     }).after('#txtaddfeature'); 
    } 
    else $txtaddfeaturehidden.val(val); 
}