2016-07-25 19 views
0

Ich stelle hier ein sehr häufiges Problem dar, aber mit merkwürdigem Verhalten. Ich hoffe, dass mein Fehler behoben oder eine Lösung gefunden wird. Ich versuche, ein Ladebild beim Senden des Formulars anzuzeigen, indem ich auf eine Schaltfläche klicke. Ich benutze einfach htmls und Javascript auf meiner JSP-Seite. Unten ist der Code für Ihre Referenz -Das Bild wird bei Safari 7/8/9 nicht angezeigt.

<input type="button" onClick="submitForm('myaction','mycontext')" /> 

<div id="progressBar" style="display:none;"> 
<img id="gifimg" src="../images/load.gif"> 
</div> 

function submitForm(action, originalContext){ 
    document.getElementById('progressBar').style.display='block'; 
    document.forms[0].action = document.forms[0].action + "?method=" + action + "&originalContext=" + originalContext; 
    document.forms[0].submit(); 
    return; 
} 

AUSGABE - Above Code im Universum völlig in Ordnung, funktioniert außer 7 Safari, 8, 9 auf Mac 10.9, 10.10, 10.11 ist. Würde mich wirklich freuen, wenn sich jemand darum kümmern und vorschlagen kann. Danke :)

Antwort

0

Sind die Browser verärgert über das onClick-Attribut?

<input id="fibble" type="button" value="click"> 

<div id="progressBar" style="display:none;"> 
loading 
</div> 


document.getElementById('fibble').addEventListener('click', submitForm); 

function submitForm(action, originalContext){ 
    document.getElementById('progressBar').style.display='block'; 
    return; 
} 
+0

Vielen Dank für die Antwort. addEventListener funktioniert jedoch nicht. Noch attachEvent. Lassen Sie mich zurück zu meiner ursprünglichen Frage gehen, und wenn ich "document.form [0] .submit();" entfernen, konnte ich sehen, Bild zu laden, jedoch Formular nicht gesendet werden. Irgendein Hinweis? – Nilamkumar

+0

Oh, ich denke, ich verstehe es. Dies ist ein klassisches Problem "Übergeben Sie ein Formular, aber aktualisieren Sie die Seite nicht". Wenn Sie es googlen, werden Sie eine Menge Versionen sehen, die jQuery verwenden. Aber !, wenn Sie hier https://developer.mozilla.org/en-US/docs/Web/API/FormData starten und mit dem Lesen beginnen, erfahren Sie alles über dieses coole Objekt, das es Ihnen einfach macht, ein Form über AJAX. – Will

Verwandte Themen