Firefox'ta php tarafından yapılan javascript bağlantılar

4 Cevap php

Ben bir senaryo üzerinde çalışıyorum ve IE ve Chrome çalışıyor, ancak bağlantılar Firefox'ta çalışmaz.

Temelde bir veritabanını sorgulamak ve sayfa içinde bazı bağlantılar oluşturmak için php kullanıyorum.

Ilgili link kod örneği:

<TD class="bodycopyblue"
    onmouseover="this.style.background='#FFFF80';this.style.cursor='pointer'"
    onmouseout="this.style.background='#FFFFFF'"
    onclick="getAccountDetails(<?php print $accountinfo['audio_account_id']; ?>)"
>view CDRs</TD>

Onmouseover / çıkış kod çalışıyor. Onclick olmak görünmüyor.

Bağlantı çağıran fonksiyonu:

function getAccountDetails(account_id) {

	accountform.aid.value=account_id;
	accountform.submit();
}

Bir form göndererek Hangi:

<FORM id="accountform"
    action="accountdetails.php?month=<?php print $cdate['mon']; ?>&year=<?php print $cdate['year']; ?>"
    method="post">
<INPUT id="aid" name="aid" type="hidden" value=0>
</FORM>

The Form doesn't seem to be showing up correctly... but it's a simple form with a single hidden field. Posted using a link generated by some php. I installed firebug, but either from my ignorance of its operation or nothing being wrong, it reports no errors.

4 Cevap

denemek

function getAccountDetails(account_id) {

        document.getElementById('aid').value=account_id;
        accountform.submit();
}

Oluşturulan oluyor çıkan HTML nedir? Firefox'ta bir "kaynağı görüntüle" yapmak ve soru kodunuzu yapıştırın. Büyük olasılıkla hatalı biçimlendirilmiş HTML göreceksiniz.

Biraz zor Kundakçı 1.4 ve FF 3.5 iş, sen Firebug'ın konsolunu açın (F12, veya sağ alt Firebug simgesini tıklatın) ve ardından açık konsol ile sayfayı yeniden yüklemeniz gerekir. Lütfen Kundakçı penceresi açık kez, belki de size bir hata gösterecektir "Console" sekmesine tıklayın.

Benim sadece diğer önerim JS ifadesinden sonra bir semilcolon eklemektir.

onclick="getAccountDetails(<?php print $accountinfo['audio_account_id']; ?>);"

Firefox olsa da genellikle çok affedicidir - bu diğer tarayıcılar değil FF çalıştığını garip. Son test olarak, mouseover ve mouseout olaylar çıkar ve sadece OnClick bırakın ve kendisi tarafından çalıştığını görmek.

function getAccountDetails(account_id) {
    accountform.aid.value=account_id;
    accountform.submit();
}

Neler accountform? Bir var accountform= ... her yerde yanlışlıkla window kapsamında adlandırılmış öğeler için bir değişken yaratır IE dışında bu adla herhangi bir değişkeni almazsınız yapmadım ettiyseniz.

Bu güvenmeyin, set accountform açıkça:

function getAccountDetails(account_id) {
    var accountform= document.getElementById('accountform');
    accountform.elements.aid.value=account_id;
    accountform.submit();
}