2010-05-14 24 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, nachdem er als der Wert der Auswahlliste hinzugefügt obenjquery dynamische Hinzufügen verstecktes Feld

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

Ich möchte ein dynamisches verstecktes Feld mit id = vals oben definiert erstellen und Wert auf eingegebene Wert in der Textbox. wie kann ich das tun

+0

Official - Welche Version von jQuery verwenden Sie? '$(). ready (...)' sollte wahrscheinlich nicht verwendet werden, wenn Sie jQuery 1.4 haben, da '$()' kein jQuery-Objekt mehr mit dem 'Dokument' zurückgibt. Tun Sie stattdessen '$ (document) .ready (...)' oder nur '$ (function() {...})'. – user113716

+0

ok thx Ich werde meinen Code überprüfen und ändern – maztt

Antwort

20

ich nicht genau sagen konnte, was man wollte. Es scheint, als ob Sie sowohl den ID als auch den value des neuen versteckten input den Wert vals haben möchten. Ist das richtig?

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

Dann würden Sie es anhängen, wo immer Sie wollen.

$hiddenInput.appendTo(selector); 

EDIT:

Zur Verdeutlichung selector ist der Verweis auf das Element, in dem Sie Ihren neuen Eingang angehängt werden soll.

Wenn Sie es an den Body-Tag angehängt werden soll, zu tun:

$hiddenInput.appendTo('body'); 

Wenn Sie es auf ein Element mit der Klasse someClass anhängen möchten, tun:

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

$ hiddenInput.appendTo (selector); , was ist der Selektor hier – maztt

+1

Sorry, 'Selektor' ist einfach das Element, an dem Sie die Eingabe anhängen möchten. Wenn Sie beispielsweise "body" eingeben, wird die ausgeblendete Eingabe an den Körper angehängt. Ich werde meine Antwort aktualisieren. – user113716

+1

Warum das '$' auf hiddenInput? –

1

Sie können tun:

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

Ich würde überprüfen um zu sehen, ob es zuerst auf der Seite war, dann füge hinzu.

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); 
} 
Verwandte Themen