slevinkelevra Δημοσ. 22 Δεκεμβρίου 2013 Δημοσ. 22 Δεκεμβρίου 2013 (επεξεργασμένο) Εχω αυτήν την javascript //καλειται οταν πατηθει άλλο κουμπι function save(){ var so = new WebSocket(); so.onerror=function (evt) {alert('problem');} if(sara=='LINES'){ so.onopen = function() {so.send(JSON.stringify({ command: 'insertAll', name: document.getElementById('name').value}));} } if(sara=='POLY'){ so.onopen = function() {so.send(JSON.stringify({ command: 'insertHalf', name: document.getElementById('name').value}));} } so.onmessage = function (evt) { var received_msg = evt.data; document.getElementById("next").style.display="block"; document.getElementById("name").value=""; document.getElementById("descr").value=""; clearLinks(); document.getElementById("pinid").value=received_msg; alert(document.getElementById("pinid").value);//δουλευει so.close();} } και μετα αυτην την απλη φορμα <form name="nextform" action="anotherpage.php" method="post" enctype="multipart/form-data"> <input name="pinid" id="pinid" type="hidden"> <input type="submit" name="submit" id="post" value="Lets Go" class="formButtonMap"> </form> το Pinid περνει τιμές από την javascript δυναμικα και όπως ειπα, οντως περνει την σωστη τιμη κάθε φορα. Αυτό δουλεύει σε Chrome και Firefox και παλιότερες εκδοσεις Internet Explorer, αλλα όχι στον Internet Explorer 11. Στον Internet Explorer 11.0.9600.16476 αν παησω το κουμπι της φορμας ,δεν κανει τιποτα για λίγο και μετά βγάζει το μηνημα "Η ιστοσελίδα δεν ανταποκρίνεται". Αν πατησω "Ανακτηση " με παει στην άλλη σελίδα, αλλά οι τιμές της φόρμας δεν έχουν περαστεί. Εναλλακτικά μου πετάει κατευθείαν ότι υπαρχει πρόβλημα και ψαχνει λυση. Καταληγει σε ένα μηνημα με 2 επιλογες "κλεισιμο προγραμματος" ή "αντιμετωπιση προβληματος" ή καπως ετσι. Αν το πατησω βγαζει μηνημα Visual Studio Just-In-Time Debugger An unhandled win32 exception occured in iexplorer.exe [688] Possible Debuggers : New Instance of Microsoft Visual Studio 2012 Ξερω ότι ο ΙΕ11 εχει καποια θεματα, και με φορμες, αλλα δεν εχω βρει καποιο workaround για την περιπτωση αυτή. Οσο για το μηνημα με τον iexplorer που μου βγαζει, αν το ριξω στο google θα μου βγαλει αποτελέσματα για Explorer και όχι iexplorer. Δουλευω σε Windows 7. Λογικα είναι θεμα φορμας και ΙΕ11. Απλα δινω και την js μηπως και... Λιγη βοηθεια ρε παιδια. Εχετε ιδεα τι παίζει? Bug? Ιος? Τι γινετε? Ευχαριστω προκαταβολικά Επεξ/σία 22 Δεκεμβρίου 2013 από slevinkelevra
kordoni Δημοσ. 22 Δεκεμβρίου 2013 Δημοσ. 22 Δεκεμβρίου 2013 Δοκίμασε να τη δώσεις διαφορετικά. Κατάργησε το κουμπί της φόρμας και φτιάξε ένα απλό το οποίο θα καλεί μια function τύπου function kordonofunction() { document.getElementById("nextform").submit(); } Γίνετε τίποτα?
slevinkelevra Δημοσ. 22 Δεκεμβρίου 2013 Μέλος Δημοσ. 22 Δεκεμβρίου 2013 Καλη ιδεα. Ευχαριστω, αλλα δεν αλλαξε κατι. Προσαρμοσα τον κωδικα όπως ειπες, αλλα το πρόβλημα παραμενει
slevinkelevra Δημοσ. 22 Δεκεμβρίου 2013 Μέλος Δημοσ. 22 Δεκεμβρίου 2013 Δοκίμασα επίσης να βαλω GET αντι για POST στη φορμα ώστε η τιμη του pinid να περναει στην άλλη σελιδα μεσω του url Η τιμη τελικα περναει στην άλλη σελιδα, αφου όμως πρωτα κολλησει για καμποσο και μετα βγαλει το γνωστο "Η ιστοσελιδα δεν ανταποκρινεται" και πατησω "Ανακτηση". Πριν αρχισω να χτυπάω το κεφαλι μου στο τοιχο, κανεις, καμια ιδεα?
nucleus Δημοσ. 23 Δεκεμβρίου 2013 Δημοσ. 23 Δεκεμβρίου 2013 Να φταίει το enctype? http://msdn.microsoft.com/en-us/library/ie/cc304100%28v=vs.85%29.aspx Μήπως το πρόβλημα είναι στο JSON?
slevinkelevra Δημοσ. 29 Δεκεμβρίου 2013 Μέλος Δημοσ. 29 Δεκεμβρίου 2013 Καταρχας συγνωμη που δεν παρεθεσα ολο τον κωδικα μου, αλλα κ γω νομιζα ότι είναι πρόβλημα της τελευταιας φορμας. Δεν αλλαζουν και πολλα ετσι κ αλλιως, απλα παραθετω πιο αναλυτικη δομη του κωδικα για να δειτε τι παιζει //html φορμα, όταν πατηθεί "Αποθηκευση" καλειται η παρακατω function save(){ var so = new WebSocket(); so.onerror=function (evt) {alert('problem');} if(sara=='LINES'){ so.onopen = function() {so.send(JSON.stringify({ command: 'insertAll', name: document.getElementById('name').value des: document.getElementById('des').value, chron: document.getElementById('chron').value, sours: document.getElementById('sours').value, type: document.getElementById('type').value, book: document.getElementById('book').value }));} } if(sara=='POLY'){ so.onopen = function() {so.send(JSON.stringify({ command: 'insertHalf', name: document.getElementById('name').value des: document.getElementById('des').value, chron: document.getElementById('chron').value, sours: document.getElementById('sours').value, type: document.getElementById('type').value, book: document.getElementById('book').value }));} } so.onmessage = function (evt) { var received_msg = evt.data; document.getElementById("next").style.display="block"; document.getElementById("name").value=""; document.getElementById("descr").value=""; clearLinks(); document.getElementById("pinid").value=received_msg; alert(document.getElementById("pinid").value);//δουλευει so.close(); document.getElementById('name').value=""; document.getElementById('des').value=""; document.getElementById('chron').value=""; document.getElementById('sours').value=""; document.getElementById('type').value=""; document.getElementById('book').value=""; } } Ο χρηστης κανει αποθηκευση την πρωτη φορμα, μαζευει η JS τα πεδια, τα αποθηκευει μεσω websockets και όταν τελειωσει, αδειαζει όλα τα πεδια της φορμας (τα κανει κενα). Και μετα ο χρηστης αμα θελει, κανει χρηση της δεύτερης φορμας που αναφερω στην αρχη. Παρατηρηστε ότι κανει κενα πανω από 5 πεδια. Ε, αυτό είναι και το Site: . Αμα εχεις μια φορμα και πας να καθαρισεις τα πεδια της με JS και τα πεδια είναι πανω από 5, κρασαρει. Site: Υπαρχει workaround το οποιο είναι Site: εδω . Καντε κλικ στο Workarounds. H function είναι γενικη και δουλευει παντου. Απλα στη κληση της clearFields(0, $("form input")); αντικαταστήστε το form με τον Id της φορμας σας, πχ #idFormas και βαλτε : μπροστα από το input ώστε να ισχυσουν οι αλλαγες για όλα τα πεδια. Εγω ειχα και ένα κουμπι τυπου <input type="button" μεσα στη φορμα, που η function το μηδενιζε κ αυτό. Για να αποφυγετε κατι τετοιο, καλεστε την function ετσι clearFields(0, $("#myFormId :input").not('input[type="button"]')); Σημειωση...Εμενα δεν μου δουλεψε ουτε καν το default κουμπι reset της φορμας. Αμα εχεις πανω από 5 πεδια, με το ζορι workaround. Γιατι ετσι ειμαστε στη Site: ! Ο browser μας υποστηριζει HTML5, αλλα με τις φορμες παθαινει μαζικο εγκεφαλικο ανευρισμα!
Προτεινόμενες αναρτήσεις
Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε
Πρέπει να είστε μέλος για να αφήσετε σχόλιο
Δημιουργία λογαριασμού
Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!
Δημιουργία νέου λογαριασμούΣύνδεση
Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.
Συνδεθείτε τώρα