Bu işe yaramazsa, bir nedeni var mı?

2 Cevap php

Basit bir HTML formu:

<form enctype="application/x-www-form-urlencoded" method="post" action="/view/album/id/4"><ol>
<li class="no-padding"><div class="element">

<input type="hidden" name="media" value="" id="media" /></div></li>
<li class="no-padding"><div class="button">
<input type="submit" name="add_to_favorites" id="add_to_favorites" value="Add To Favorites" /></div></li></ol></form>

JQuery:

$('#add_to_favorites').hover(function() {
    var id = 10;
    // alert(id);
    $('#media').val(id);
});

Temelde formun teslim düğmenin üzerine getirdiğinizde, jQuery # medya gizli alanın değeri olarak 10 set olacağı anlamına gelir.

Gerçi Gönder düğmesine tıkladığınızda, gizli alan NULL döndürür:

var_dump($_POST);
// this will return:
// array(2) { ["media"]=>  NULL ["add_to_favorites"]=>  NULL }

EDIT:

Ben "var id" değerini ve uyarı ile gizli alan değeri () hem de test edilmiş ve düzgün ayarlanır.

EDIT2:

Tek tıklama (sayfadaki tetiklenen) olay da, burada tam kod var:

$(document).ready(function() {
    $('.box-content2 a').click(function() {
        var path = $(this).attr('href');
        var title = $('img', this).attr('alt');
        var id = $(this).attr('id');
        $('#media-photo img').attr('src', path);
        $('#media-photo img').attr('alt', title);
        $('#media-photo img').attr('id', id);
        return false;
    });

    $('#add_to_favorites').hover(function() {
        var id = 10;
        $('#media').val(id);
    });
});

2 Cevap

Nedeni, Val (bu attr gibi attr işlevini (anahtar kullanmak eşleşen bir öğe bir özelliği ayarlamak için, bir değer, tek bir özelliği ayarlamak için kullanabilirsiniz olamaz yani) sadece eşleşen birinci elemanın giriş değerini alır olduğunu değer)

Daha fazla bilgi edin this ve this

Size vurgulu olay için tanımlanmış iki işlevleri olmalıdır. Mouseover için bir ve mouseout için, bir. Yani vurgulu olay gibi görünecektir:

$('#add_to_favorites').hover(function() {
    var id = 10;
    // alert(id);
    $('#media').val(id);
}, function() {
    // Probably do nothing here.
});

Belki mouseover olaya bağlanması daha iyi olurdu?