Witam czy zdarzenie change bedzie działało dla elementów typu hidden?
<input type="hidden" id="post_id" value="123">$("#post_id).change(function()
{
alert('asd');
});
Takie cos nie działa, jest może jakiś sposób na uzyskanie tego efektu?
Witam czy zdarzenie change bedzie działało dla elementów typu hidden?
<input type="hidden" id="post_id" value="123">$("#post_id).change(function()
{
alert('asd');
});
Takie cos nie działa, jest może jakiś sposób na uzyskanie tego efektu?
A w którym momencie następuje zmiana atrybutu value tego elementu? Użytkownik sam z siebie tego nie zmieni wartości, skoro to jest ukryty input ( no, chyba, że używa Firebuga ;) ).
Zatem, bindowanie zdarzeń raczej nic nie da. Jest natomiast pewne obejście które korzysta z namiastki programowania wielowątkowego w JS.
var postid_value = document.getElementById("post_id").value;
setInterval(function(){
if (document.getElementById("post_id").value != postid_value)
{
postid_value= document.getElementById("post_id").value;
postid_onchange();
}
}, 10);
postid_onchange = function()
{
// ... twój kod
};
Wygląda to tak: w zmiennej value zapisujesz aktualną wartość atrybutu value. Następnie, za pomocą setInterval tworzysz funkcję, która będzie wywoływać się co ~10 milisekund. W tej funkcji sprawdzasz czy nastąpiła zmiana - po prostu porównując aktualną wartość elementu z wartością, która została wcześniej zapisana. Jeśli te wartości będą różne, to wykonuje się funkcja postid_onchange, a do zmiennej value zostanie zapisana nowa wartość tego elementu.
W sumie chodziło mi o skryptowe zmienienie wartości. Nie wiem czy zdarzenia też to uwzględniają