קהילות פורומים, הורדות, יעוץ ותמיכה


אשכולות דומים

  1. [מדריך]:איך להפוך את המקשים של הנוקיה לצבעונים, שוו
    על ידי 0neill b0y בפורום ארכיון מדריכים
    תגובות: 11
    הודעה אחרונה: 14-03-2007, 17:59
  2. [מחליף] מספר של 6 ab0 INV
    על ידי m_merfeld בפורום עשינו עסק - ארכיון
    תגובות: 10
    הודעה אחרונה: 03-09-2005, 22:27
  3. [מכרז] מספר של 6 יפה
    על ידי MaTaN בפורום עשינו עסק - ארכיון
    תגובות: 13
    הודעה אחרונה: 03-09-2005, 21:29
  4. [קונה] מספר 6 ספרות עד 600 אולי אפילו 700 נק' !!!!!!!!!
    על ידי Shai_16 בפורום עשינו עסק - ארכיון
    תגובות: 9
    הודעה אחרונה: 02-09-2005, 22:33
  5. [מוכר] מספר 4896511 חם חם מכרז מ-50!!
    על ידי Shai_16 בפורום עשינו עסק - ארכיון
    תגובות: 3
    הודעה אחרונה: 02-09-2005, 21:21
+ תגובה לנושא
מציג תוצאות 1 עד 2 מתוך 2

להפוך מספר למילים ב jQuery.

  1. #1
    משתמש משקיע האוואטר של CSS
    תאריך הצטרפות
    08/2010
    הודעות
    3,206
    לייקים
    176
    נקודות
    1,200
    משפט מחץ
    כי גם מנהלים הם בני אדם..
    מין: זכר

    ברירת מחדל להפוך מספר למילים ב jQuery.

    להפוך מספר למילים ב jQuery.
    במדריך הזה נלמד איך להפוך כל מספר בין 1 ל 999 למילים.
    נתחיל ביצירת 3 תגים, תג דיב שיכיל את הטקסט של המספר, תג input text לקבלת מספר, ותג input submit לביצוע הקוד אשר יהפוך את המספר לטקסט.
    קוד HTML:
    <div id="henum"></div>
    <input type="text" id="number"> <input type="submit" value="Go" id="submit">
    עכשיו נכין את הקטע של ה jQuery.
    נכין אירוע לחיצה על ה submit:
    קוד HTML:
    $("#submit").click(function() {
    
    });
    לפני שנתחיל להכין את הקוד שלנו, הכנתי לכם רשימה לאיך לפרק כל מספר בכל קטגוריה, יעזור לכן להבנה בהמשך:

    אחדות:
    num - הספרה.
    עשרות:
    num/10 - ספרת העשרות (יש לעגל את הספרה כלפי מטה, למשל המספר 57 יהיה 5.7).
    num%10 - ספרת האחדות.
    מאות:
    num/100 - ספרת המאות (יש גם פה לעגל כלפי מטה).
    num/10%10 - ספרת העשרות (יש לעגל כלפי מטה).
    num%10 - ספרת האחדות.


    עכשיו מה שהקוד צריך בעצם לעשות, זה לבדוק איזה סוג המספר שלנו (ספרה, דו ספרתי או תלת ספרתי), ולפי זה לפרק את המספר לאחדות, עשרות ומאות.
    אז הכי פשוט זה להכין מערך אשר יכיל את המילים של כל ספרה, כדי שבפירוק של המספר נקבל את הספרה, וכך נוכל לגשת אליה דרך המערך.
    נכין משתנה num אשר יכיל את המספר שלנו, ונכין 3 מערכים, אשר יכילו את הטקסט בעברית.
    קוד HTML:
    var num = $("#number").val(), n1 = ["אחד","שתיים","שלוש","ארבע","חמש","שש","שבע","שמונה","תשע"], 
    n2 = ["עשר","עשרים","שלושים","ארבעים","חמישים","שישים","שבעים","שמונים","תשעים"],
    n3 = ["מאה","מאתיים","שלוש מאות", "ארבע מאות","חמש מאות","שש מאות","שבע מאות","שמונה מאות","תשע מאות"];
    עכשיו נתחיל בחלק הראשון, הפיכת ספרה למילה.
    נבדוק האם המספר שלנו הוא ספרה (טווח של 1-9, לא כולל את 0), במידה וכן, אז נדפיס את הערך של המערך הראשון, עם הספרה פחות 1 (כי במערך הספירה מתחילה מ - 0).
    במידה ולא, נדפיס הודעת שגיאה.
    קוד HTML:
    if(num < 10 && num > 0) {
    $("#henum").text(n1[num-1]);
    }else{
    $("#henum").text("המספר שהוקש לא תקין");
    }
    עכשיו אם תבדקו, תראו שאם לדוגמא תרשמו את הספרה 6, תקבלו בחזרה את המילה שש.
    עכשיו נתקדם ונעשה גם שהוא ידפיס את העשרות.
    במקום השורה של הודעת השגיאה, נכין תנאי נוסף אשר יבדוק האם המספר הוא דו ספרתי (טווח של 10-99).
    קוד HTML:
    if(num < 100 && num > 9) {
    
    }else{
    $("#henum").text("המספר שהוקש לא תקין");
    }
    בתוך התנאי נוסיף שורה אשר תדפיס לנו את המספר, ע"י פנייה למערך השני עם ספרת העשרות, ופנייה למערך הראשון עם ספרת האחדות.
    קוד HTML:
    $("#henum").text(n2[Math.floor(num/10)-1] + " ו" + n1[num%10-1]);
    עכשיו אם תבדקו, תראו שאם לדוגמא תרשמו את המספר 94, תקבלו תשעים וארבע.
    עכשיו יש בתוך התנאי הזה 2 בעיות - הראשונה שאם רושמים מספר רק של עשרות (כמו למשל 50) אז זה לא ימצא במערך את -1 (הספרה היא 0, ואנחנו מורידים אחד).
    אז כדי לפתור את זה, נעשה תנאי שיבדוק האם ספרת האחדות היא 0.
    קוד HTML:
    if(num < 100 && num > 9) {
    if(num%10 == 0) {
    $("#henum").text(n2[Math.floor(num/10)-1]);
    }else{
    $("#henum").text(n2[Math.floor(num/10)-1] + " ו" + n1[num%10-1]);
    }
    ככה זה יהיה עד עכשיו התנאי של העשרות.
    אבל אם תשחקו עם זה, תגלו עוד בעיה - במספרים שבין 11 ל 19.
    אם תרשמו לדוגמא את המספר 15, תקבלו עשר וחמש.
    אז כדי לפתור את הבעיה הזאת, נצטרך לבצע תנאי שיבדוק האם המספר הוא בין 11 ל 19, ובמידה וכן, אז להדפיס את ספרת האחדות, ולהוסיף "עשרה".
    קוד HTML:
    if(num < 100 && num > 9) {
    if(num%10 == 0) {
    $("#henum").text(n2[Math.floor(num/10)-1]);
    }else{
    if(num < 20 && num > 10) {
    $("#henum").text(n1[num%10-1] + " עשרה");
    }else{
    $("#henum").text(n2[Math.floor(num/10)-1] + " ו" + n1[num%10-1]);
    } }
    זהו, עכשיו כל המספרים מ 1 עד 99 יעבדו.
    עכשיו נעבור למאות.
    נעשה בדיקה האם המספר הוא בין 100 ל 999.
    קוד HTML:
    if(num > 99 && num < 1000) {
    
    }
    במידה וכן, אז שהוא יפרק את המספר לאחדות, עשרות ומאות, ולפי זה שיוציא את הערך שיש במערך.
    קוד HTML:
    $("#henum").text(n3[Math.floor(num/100)-1] + " " + n2[Math.floor(num/10%10)-1] + " ו" + n1[num%10-1]);
    את הקוד הזה נוסיף גם הפעם במקום ההודעת שגיאה, כדי ליצור תנאי נוסף, ואז נעשה ELSE לתנאי של המאות, ואז נדפיס את השגיאה.
    קוד HTML:
    if(num > 99 && num < 1000) {
    $("#henum").text(n3[Math.floor(num/100)-1] + " " + n2[Math.floor(num/10%10)-1] + " ו" + n1[num%10-1]);
    }else{
    $("#henum").text("המספר שהוקש לא תקין");
    } } }
    גם הפעם אנחנו נתקלים בכמה מצבים של בעיות שראינו בתנאים הקודמים:
    1. אם המספר מכיל עשרה (לדוגמא 512, 915), אז צריך את ספרת האחדות + עשרה.
    2. אם ספרת האחדות וספרת העשרות שוות ל - 0, אז להדפיס רק את המאות.
    3. אם ספרת האחדות שווה ל - 0 (לא כולל העשרות), אז לא להדפיס את האחדות.
    4. אם ספרת העשרות שווה ל - 0 (לא כולל האחדות), אז לא להדפיס את העשרות.

    נתחיל בתנאי הראשון, אשר יבדוק האם המספר הוא עשרה:
    קוד HTML:
    if(num%100 < 20 && num%100 > 10) {
    $("#henum").text(n3[Math.floor(num/100)-1] + " ו" + n1[num%10-1] + " עשרה");
    }else{
    במידה ולא, אז נבדוק אם האחדות והעשרות שוות ל - 0:
    קוד HTML:
    if(num%10 == 0 && Math.floor(num/10%10) == 0) {
    $("#henum").text(n3[Math.floor(num/100)-1]);
    }else{
    במידה ולא, אז נבדוק האם האחדות שווה ל - 0:
    קוד HTML:
    if(num%10 == 0) {
    $("#henum").text(n3[Math.floor(num/100)-1] + " " + n2[num/10%10-1]);
    }else{
    במידה ולא, אז נבדוק האם העשרות שווה ל - 0:
    קוד HTML:
    if(Math.floor(num/10%10) == 0) {
    $("#henum").text(n3[Math.floor(num/100)-1] + " ו" + n1[num%10-1]);
    }else{
    במידה ולא, אז פשוט נדפיס את המספר רגיל, ונסגור גם את ה elseים:
    קוד HTML:
    $("#henum").text(n3[Math.floor(num/100)-1] + " " + n2[Math.floor(num/10%10)-1] + " ו" + n1[num%10-1]);
    } } } } 
    זהו, סיימנו.
    עכשיו אתם יכולים להדפיס כל מספר בעברית, ואתם יכולים להשתמש ברעיון הזה לעוד דברים, כמו למשל להדפיס את החודש בעברית לפי מספר (לדוגמא: חודש 4 - אפריל).
    הקוד המלא במידה ויש בעיות:
    קוד HTML:
    <script src="jquery/jquery.js"></script>
    <script type="text/javascript">
    $(document).ready(function() {
    
    $("#submit").click(function() {
    var num = $("#number").val(), n1 = ["אחד","שתיים","שלוש","ארבע","חמש","שש","שבע","שמונה","תשע"], 
    n2 = ["עשר","עשרים","שלושים","ארבעים","חמישים","שישים","שבעים","שמונים","תשעים"],
    n3 = ["מאה","מאתיים","שלוש מאות", "ארבע מאות","חמש מאות","שש מאות","שבע מאות","שמונה מאות","תשע מאות"];
    
    if(num > 99 && num < 1000) {
    if(num%100 < 20 && num%100 > 10) {
    $("#henum").text(n3[Math.floor(num/100)-1] + " ו" + n1[num%10-1] + " עשרה");
    }else{
    if(num%10 == 0 && Math.floor(num/10%10) == 0) {
    $("#henum").text(n3[Math.floor(num/100)-1]);
    }else{
    if(num%10 == 0) {
    $("#henum").text(n3[Math.floor(num/100)-1] + " " + n2[num/10%10-1]);
    }else{
    if(Math.floor(num/10%10) == 0) {
    $("#henum").text(n3[Math.floor(num/100)-1] + " ו" + n1[num%10-1]);
    }else{
    $("#henum").text(n3[Math.floor(num/100)-1] + " " + n2[Math.floor(num/10%10)-1] + " ו" + n1[num%10-1]);
    } } } } 
    }else{
    
    if(num < 10 && num > 0) {
    $("#henum").text(n1[num-1]);
    }else{
    if(num < 100 && num > 9) {
    if(num%10 == 0) {
    $("#henum").text(n2[Math.floor(num/10)-1]);
    }else{
    if(num < 20 && num > 10) {
    $("#henum").text(n1[num%10-1] + " עשרה");
    }else{
    $("#henum").text(n2[Math.floor(num/10)-1] + " ו" + n1[num%10-1]);
    } }
    }else{
    if(num > 99 && num < 1000) {
    $("#henum").text(n3[Math.floor(num/100)-1] + " " + n2[Math.floor(num/10%10)-1] + " ו" + n1[num%10-1]);
    }else{
    $("#henum").text("המספר שהוקש לא תקין");
    } } } } 
    
    });
    
    });
    </script>
    
    <div id="henum"></div>
    <input type="text" id="number"> <input type="submit" value="Go" id="submit">
    כל שאלה, הערה, בקשה תתקבל בברכה.


    המשתמשים שלי:
    HotBanana > NewYear > Dursci > DurSci > FullSex > CSS
    PHP | SQL | HTML | CSS | JS | JQUERY | AJAX

  2. קישורים ממומנים

  3. #2
    Smoxer in your mind
    משתמש כבוד
    האוואטר של -Smoxer-
    תאריך הצטרפות
    11/2011
    הודעות
    8,881
    לייקים
    1181
    נקודות
    483
    פוסטים בבלוג
    3
    משפט מחץ
    Further gets colder until nothing was all that I saw around
    מין: זכר

    ברירת מחדל

    מדריך נחמד מאוד.
    תודה רבה.

+ תגובה לנושא


הרשאות פרסום

  • אין באפשרותך לפרסם נושאים חדשים
  • אין באפשרותך לפרסם תגובות
  • אין באפשרותך לצרף קבצים
  • אין באפשרותך לערוך את הודעותיך


כל הזמנים הם לפי GMT +3. השעה כרגע היא 00:21.
מופעל על ידי vBulletin™ © גרסה 4.1, 2011 vBulletin Solutions, Inc. כל הזכויות שמורות.
פעילות הגולשים
אומנות וגרפיקה
מוזיקה
ספורט
סדרות טלוויזיה
סרטים וקולנוע
קנייה ומכירה
רשתות חברתיות
הבורר 3
פורומי פנאי ובידור
סרטים
סדרות
משחקים
דיבורים
אקטואליה
בעלי חיים
בדיחות והומור
משחקי ספורט
הבורר
מחשבים וטכנולוגיה
תמיכה טכנית
חומרה ומודינג
תוכנות להורדה
סלולארי וגאדג'טים
רקעים למחשב
ציוד הקפי למחשב
אבטחת מידע
תכנות ובניית אתרים
כסף ברשת
אייפון
בריאות ואורח חיים
כושר ופיתוח גוף
דיאטה
צבא וגיוס
יעוץ מיני
מה שבלב
אומנות הפיתוי
יהדות
מיסטיקה ורוחניות
אתאיזם ודתות

נושאים: 2,450,203 | הודעות: 8,150,785 | משתמשים: 315,603 | המשתמש החדש ביותר: upizijoj | עיצוב גרפי: סטודיו עודד בביוף | קידוד: rellect