2009-03-06 18 views
0

Bir form içinde seçme alanı var gönderin:onchange = "javascript: document.my_form.submit()" karşı normal

<form id="myform"> 
<select id="value" onchange="javascript: document.myform.submit()"> 
    <option>.... 
</select> 
</form> 

formu gönderildikten sonra, geri kullanmak mümkün değildir 'formu yeniden göndermeden düğme. Ancak, normal bir 'gönder' düğmesi kullanırsam, bu mümkündür.

Yine de javascript 'submit()' işlevini kullanırken bu davranışı elde etmenin bir yolu var mı?

Bu siteyi kullanmak için javascript'in etkin olması gereklidir ve bu, istemcinin istediği yöntemdir.

+0

kullanarak olmalıdır Bu çok tarayıcıya özgü geliyor. Neyi başarmaya çalışıyorsun? Belki de probleminizi çözmenize yardımcı olacak farklı bir yaklaşım var. – jonstjohn

+0

Bunu tekrar tekrar söylüyorum, on exchange seçimlerine dikkat edin: http://stackoverflow.com/questions/580281/redirect-automatically-when-selecting-an-item-from-a-select-drop-down- liste/580317 # 580317 –

+0

Bu iPhone için, yani IE önemli değil. –

cevap

3

Bunun yerine bir işlev çağırın.

<select id="value" onchange="sendForm()"> 

... komut dosyası bloğu ...

function sendForm() { 
    document.myform.submit() 
} 

Ayrıca, bir HREF etiketinin javascript: dışında belirtmeniz gerekir asla.

+0

Tamam, formu yeniden göndermeden geri döner, ancak onchange = "sendForm()" sadece ilk kez çalışır ... Bunu yeniden ayarlamak için herhangi bir yol var mı? –

+0

action = "SomeNewPage.htm" ve method = "post" ile bir test yaptım ve iyi çalışıyor. Form eylemin nedir? –

0

"onchange yalnızca ilk kez çalışıyor mu?"

Aynı değeri yeniden seçiyor musunuz? Değişim olduğunda sadece değişim yanar. Aynı seçeneği tekrar seçmek isterseniz, onblur'u kullanmanız gerekir.

Ayrıca gerçekten

document.getElementById("myform").submit(); 
İlgili konular