Onlar PHP tarafından belirlenen olsaydı neden olmasın onay kutularını / Radiobutonlar ve seçenekleri Resetlenebilir vardır?

4 Cevap php

XHTML 1.1 ile çalışma

Bu giriş sayfası php başardı. Birkaç onay kutularını, Radiobutonlar ve bir dropdownlist içerir.

Arkasında formchecking ve bir şey kontrol değilse, sayfayı yeniden ve tüm değerler şifreleri hariç, geri yerine doldurulur bir sürü var.

Bu seçilmiştir <select>, <input type="radio" ve <input type="checkbox" elemanları yeniden seçilir anlamına gelir.

Ben kaynak kodu baktığınızda Oysa, checked="checked" ve selected="selected" parçaları eksik. Ama yeniden sayfa onları seçti ne gibi görerek, onlar hayata olmalıdır.

Ben tıklayın henüz benim <input type="reset" düğmesi, hiçbir şey olmuyor. De-seçilmiş alamadım.

Ben diğer bazı onay kutularını, Radiobutonlar seçin ve sıfırlama çalışır, seçeneğini değiştirdiğinizde eğlenceli bir şey ama sadece yeni tıkladım onay kutularını ve RadioButtons üzerine, vardır.

Daha da garip ben reset tıkladığımda, Radiobutonlar, onay kutularını seçer kendilerini açık kalmamasıdır gerçektir, tekrar kontrol veya PHP yeniden sayfayı zorladığında seçildi birine atlayabilirsiniz.

Burada neler oluyor?

Şimdi IE kontrol, arada firefox kullanma.

EDIT: IE aynı sorun.

4 Cevap

Eğer "View Source" kullanıyorsanız ve komut agresif no-cache başlıklarını belirliyor ise, bu görüntülenen ne kaynak kodunu görmediğinizi mümkündür. Kundakçı veya DOM Inspector gibi canlı DOM, gösterir bir şey deneyin.

PHP yeniden sonra kod eksik ise checked = "checked" ve seçilmiş = tarayıcı kendi değerlerini hatırladı ve onları restore onları seçilen göründüğünü daha sonra gerçekten tek açıklama, niteliklerinde "seçilmiş". Bu da muhtemelen davranış kalanını açıklar. Ben PHP kodu doğru kontrol / seçilmiş nitelikleri oluşturur ve gerisini kendisi özen emin öneririz.

(Hangi tarayıcı?)

Ne olursa olsun, (tüm kontrolleri sıfırlama değil) bu davranış aksi gezen ve web formları doldurarak korkunç bir deneyim (çoğu formları tek bir yanlışlıkla reset nerede) olacaktır, tasarım gereğidir.

Orada yenileyin (F5 gibi) da bulunuyor ve "gerçek" yenileme (Ctrl-F5) her zaman tamamen sayfa sıfırlanır hangi.

Ben tüm sorunların nedeni emin değilim ama javascript'leri varsayılan form sıfırlama yöntemi nasıl çalıştığını hızlı bir mola aşağı vereceğim.

Eğer aşağıdaki formu söylüyorlar:

<form id="myForm>
    <input type="text" name="textField1" value="" />
    <input type="text" name="textField2" value="test1" />
    <input type="text" name="textField3" value="test2" />

    <input type="checkbox" name="checkbox1" value="box1" />
    <input type="checkbox" name="checkbox2" value="box2" checked />
</form>

And in textField1 you put Foo And in textField2 you put Bar And in textField2 you put Baz

And then you check off both check boxes. Then reset the form

myForm.reset();

Form alanları artık şu olacaktır:

textField1="" textField2="test1" textField3="test2"

checkbox1=NOT checked checkbox2=checked

Nedir sıfırlama yöntemi formu "açık" değil geri formu için varsayılan tüm değerleri vardı ne ayarlar yok edilir olur.

Bu biraz dışarı yardımcı olur umarım.