2016-03-23 11 views
0

Ich habe folgendes Eingabeelement:Capture-Wert eines versteckten Eingabeelement jQuery

<input type="hidden" id="input_2_204_data" name="input_2_204_data" value> 

Ich brauche ein Ereignis zu erfassen, wenn es geändert wird, und der Wert ist nicht leer. Ich habe mir ältere SO-Fragen angeschaut, aber nichts schien zu funktionieren.

Hier ist die neueste Schnipsel ich mit gekommen sind, aber es funktioniert auch nicht, und es gibt keine Fehler in der Konsole:

jQuery(document).ready(function(){ 
    var $sign = jQuery('[id$=input_2_204_data]'); 

    $sign.on("change", function(){ 
     alert('hey'); 
    }); 
}); 

Jede Hilfe oder Anleitung ist sehr geschätzt.

+2

Es wird kein Ereignis ausgelöst, wenn der Wert einer 'Eingabe' programmgesteuert geändert wird. Sie sollten bei Bedarf eine Funktion (oder ein Ereignis manuell auslösen) für das Element aufrufen. –

Antwort

0

Sie haben falsches Auswahlelement zum Ziel, Sie müssen # hier ID-Auswahl verwenden Elements Ziel von ID:

var $sign = jQuery('#input_2_204_data'); 
$sign.on("change", function(){ 
    console.log($(this).val()); 
}); 
+0

Das Snippet wurde kopiert und eingefügt, protokolliert den Wert jedoch nicht, und es wird kein Fehler protokolliert. – WpDoe

2
jQuery(document).ready(function(){ 
    var $sign = jQuery('#input_2_204_data'); 
alert($sign.val()) 
}); 
0

Sie haben #input_2_203_data die richtigen Wähler zu verwenden. Die Verwendung von .change() funktioniert gut.

jQuery(document).ready(function(){ 
    var $sign = jQuery('#input_2_204_data'); 

    $sign.change(function() { 
    if($sign.val() != '') { 
     alert("Handler for .change() called."); 
    } 
    }); 
}); 
Verwandte Themen