Καλημέρα.
Χρειάζομαι λίγη βοήθεια σε ένα πρόβλημα που έχω εδώ και λίγο καιρό στο οποίο δεν μπορώ να βρω λύση, έχω πραγματικά κολλήσει...
Έχω ένα web application σε ASP.NET, το οποίο χρησιμοποιεί μια Master Page, με το οποίο γίνεται distribution κάποιων reports σε ένα intranet...
Θέλω να χρησιμοποιήσω ένα Custom Validator για να ελέγξω τα δεδομένα που καταχωρούν οι χρήστες σε δύο text boxes τα οποία παίρνουν ημερομηνίες...To validation είναι πολύ απλό, θέλω απλά η τιμή του δεύτερου textbox να είναι μεγαλύτερη ή ίση με την τιμή του πρώτου textbox.
Σε πρώτη φάση σε μια τεστ σελίδα, έγραψα ένα script σε javascript το οποίο παίζει κανονικά όταν το συνδέω με το OnClientClick event ενός button...
Το script είναι αυτό:
Το πρόβλημα αρχίζει όταν προσπαθώ να περάσω το script στην κανονική σελίδα...Κώδικας:function CheckDate() { var stDate = document.form1.tbDateFrom.value; var endDate = document.form1.tbDateTo.value; var dt1 = stDate.substring(0, 2); var mn1 = stDate.substring(3, 5); var yr1 = stDate.substring(6, 10); var dt2 = endDate.substring(0, 2); var mn2 = endDate.substring(3, 5); var yr2 = endDate.substring(6, 10); var date1 = parseInt(yr1 + mn1 + dt1, 10); var date2 = parseInt(yr2 + mn2 + dt2, 10); if (date1 > date2) { alert("Έχετε καταχωρήσει λάθος ημερομηνία. Παρακαλώ προσπαθήστε ξανά."); return false; } else { return true; } }
Εκεί όχι μόνο δε παίζει όταν απλά προσπαθώ να το τεστάρω με το ίδιο τρόπο όπως στην τεστ σελίδα αλλά ούτε στον CustomValidator παίζει...
Ή δεν παίζει καθόλου ή σκάει βγάζοντας λάθη για "object required" ή "not defined object"...
Δοκίμασα διάφορα που βρήκα στο internet όπως τα ASP.Net Inline Tags αλλά πάλι δεν κατάφερα τίποτα, προφανώς κάτι κάνω λάθος...
Παιδιά, όποιος ξέρει και θέλει ας δώσει μια βοήθεια, είμαι εντελώς newb στην javascript...
Εμφάνιση 1-6 από 6
-
26-11-09, 14:54 Πρόβλημα με javascript σε ASP.NET σελίδα... #1
-
26-11-09, 15:09 Απάντηση: Πρόβλημα με javascript σε ASP.NET σελίδα... #2
Δεν χρειάζεται να γράψεις javascript. Το κάνει το .net για σένα
Κώδικας:<asp:TextBox ID="date1" runat="server"></asp:TextBox> <asp:CompareValidator ID="valdate1" runat="server" EnableClientScript="true" ControlToValidate="date1" Display="Dynamic" ErrorMessage="Δώσε ημερομηνία" Operator="DataTypeCheck" Type="Date"></asp:CompareValidator> <br /> <asp:TextBox ID="date2" runat="server"></asp:TextBox> <asp:CompareValidator ID="valdate2" runat="server" ControlToValidate="date2" Display="Dynamic" ErrorMessage="Δώσε ημερομηνία" EnableClientScript="true" Operator="DataTypeCheck" Type="Date"></asp:CompareValidator> <br /> <asp:CompareValidator ID="CompareValidator3" runat="server" ControlToCompare="date1" ControlToValidate="date2" Display="Dynamic" EnableClientScript="true" ErrorMessage="Η δεύτερη ημερομηνία πρέπει να είναι μεγαλύτερη από την πρώτη" Operator="GreaterThan" Type="Date"></asp:CompareValidator>
εκτός από ροζ υπάρχουν και άλλα χρώματα??
-
26-11-09, 15:43 Απάντηση: Πρόβλημα με javascript σε ASP.NET σελίδα... #3
Φίλε agmarios, καταρχάς ευχαριστώ που μπήκες στον κόπο να απαντήσεις...
Το ξέρω ότι υπάρχει ο Compare Validator και το έχω ήδη χρησιμοποιείσει στην σελίδα μου...
To πρόβλημα είναι ότι επειδή υπάρχει κι άλλος ένας validator ο οποίος ελέγχει την ορθότητα της ημερομηνίας που εισάγει ο χρήστης, υπάρχει μια περίπτωση όπου αν ο χρήστης κάνει δύο διαδιχικά λάθη, δηλαδή λάθος ημερομηνία και μικρότςερη ημερομηνία, τότε γίνονται fire και οι δύο validators και αυτό δεν το θέλω γι' αυτό και θέλω να χρησιμοποιήσω ένα custom validator για να συνδυάσω και τα δύο constraints σε ένα...Το πρόβλημα είναι ότι δεν έχω καταφέρει να κάνω να δουλέψει με custom validator ούτε καν τον ένα περιορισμό...
-
26-11-09, 17:13 Απάντηση: Πρόβλημα με javascript σε ASP.NET σελίδα... #4
θα σου πρότεινα να αποφύγεις την custom javascript. Καλύτερα να επιμείνεις στους validators. Για custom validator υπάρχει πολύ υλικό στο SDK αλλά και στο web
εκτός από ροζ υπάρχουν και άλλα χρώματα??
-
26-11-09, 17:45 Απάντηση: Πρόβλημα με javascript σε ASP.NET σελίδα... #5
Validate κάνεις σε server controls; Δοκίμασε κάτι τέτοιο:
Κώδικας:var stDate = getElementById("<%= tbDateFrom.ClientID %>").value; var endDate = getElementById("<%= tbDateTo.ClientID %>").value;
Κώδικας:<asp:ContentPlaceHolder ID="head" runat="server" />
Κώδικας:<asp:Content ContentPlaceHolderID="head" runat="Server"> ...script tag... </asp:Content>
-
27-11-09, 12:15 Απάντηση: Πρόβλημα με javascript σε ASP.NET σελίδα... #6
Καλημέρα.
Τα έχω δοκιμάσει αυτά που μου λες...
Δυστυχώς δεν πέτυχα κάτι...
Το πρόβλημά μου είναι κυρίως πρόβλημα λογικής του πως δουλέυει η σελίδα...
Όταν ο χρήστης πληκτρολογήσει μια λάθος ημερομηνία και στο καπάκι βάλει στο δεύτερο textbox μια ημερομηνία μικρότερη από αυτή στο πρώτο textbox τότε ενεργοποιούνται και οι δύο validators...εγώ δεν το ήθελα αυτό, ήθελα να ενεργοποιείται ένας validator κάθε φορά, σύμφωνα με το τελευταίο λάθος που προκύπτει, η λειτουργία ως έχει μέχρι τώρα πάντως δεν είναι λάθος...
Μάλλον θα το αφήσω ως έχει, έτσι κι αλλιώς χρησιμοποιώ calendar και η επιλογή των ημερομηνιών γίνεται και αυτόματα και η ενεργοποίηση και των δύο validators γίνεται ουσιαστικά σε μία περίπτωση, είναι ψιλοσπάνιο...
Anyway, είδωμεν...
Ευχαριστώ πολύ και τους δύο για την συνεισφορά σας!!!
Παρόμοια Θέματα
-
Σελίδα Asp.net Πίνακας με περιεχόμενα από βάση
Από equilibriumg στο φόρουμ Web authoring, development & web designΜηνύματα: 0Τελευταίο Μήνυμα: 16-11-09, 12:05 -
κατέβασμα βίντεο από asp σελίδα
Από ktiniatros στο φόρουμ Internet, web surfing και online υπηρεσίεςΜηνύματα: 8Τελευταίο Μήνυμα: 03-01-07, 01:04 -
ASP.NET
Από spartacus στο φόρουμ WindowsΜηνύματα: 2Τελευταίο Μήνυμα: 11-12-06, 11:41
Bookmarks