שלח תשובה

זירת השאלות

275
צפיות
9
תשובות

שבירת שורה בעת שליחת טופס .

,‏ 22 ביוני, 2004

בעבר ראיתי סקריפט שמוסיף אוטומטית <br> בעת הקשה על המקש "אנטר" בתוך הtextarea . כמובן הוא לא מוסיף את התגית מידית ומציג אותה לפני המשתמש – אלא מוסיף את התגית <br> לתוך מסד הנתונים (אקסס) שלי .

דוגמא ברורה :
הקלדתי מספר שורות בתוך textarea ושלחתי את הטופס (הוספה למסד נתונים אקסס) . כעת בדף הראשי בו הוא מציג לי את המידע שהקלדתי הכל מחובר ואין הפרדת שורות.

איזה סקריפט או קטע קוד מוסיף BR כאשר אני לוחץ אנטר – לתוך המסד נתונים ?

תגיות:

9 תשובות

  1. BuildHome הגיב:

    פונקצית Replace
    תעשה זאת כאשר אתה מציג את הנתונים מתוך המסד ולא בעת הכנסת הנתונים אליו.

    הנה הפונקציה:

    str = Replace(str,chr(13),"<br>")

    str הוא רק המשתנה שההחלפה תתבצע בו.
    אם אתה מוציא נתונים מהמסד זה יהיה משהו כזה:

    str = Replace(rs("msg"),chr(13),"<br>")

    מקווה שהבנת את העיקרון והשימוש.

  2. prince01 הגיב:

    הבנתי, אבל אני רוצה בכל שורה
    אני רוצה בכל שורה שהBR יתווסף .
    כאשר בכל פעם שאשבור שורה בtextarea – בדף הצגת הנתונים הוא יציג לי את הנתונים בדיוק כפי שראיתי אותם בשדה הtextarea.

  3. BuildHome הגיב:

    זה בדיוק מה שהפונקציה שכתבתי עושה.

  4. ניר טייב הגיב:

    זה יעבוד רק ב-IE
    הוסף לתגית ה-textarea את המאפיין wrap עם הערך hard

    <textarea wrap="hard"></textarea>

    אבל התשובה של בילד תהיה יותר טובה או שתפתח פונקציה שתשבור שורות כל כמה תווים

  5. Just-Tal הגיב:

    אבל…
    לפי הפונקציה של בילד, היא לא יכולה לבטעות לשבור אמצע מילה?…?…?

  6. prince01 הגיב:

    תודה אחי מצאתי .. והנה
    הנה מה שעשיתי – אם למישהו תבוא השאלה בעתיד :
    בניתי פונקצייה :


    Function FormatStr(strTemp)

        strTemp = Replace(strTemp, chr(13), "")
        strTemp = Replace(strTemp, chr(10), "<br>")
        strTemp = Replace(strTemp, "<br><br><br><br>", "<br><br>")
        strTemp = Replace(strTemp, "<br><br><br>", "<br><br>")
        strTemp = Replace(strTemp, chr(34), "’")
        strTemp = Replace(strTemp, "(", "(")
        strTemp = Replace(strTemp, ")", ")")
        
        FormatStr = strTemp
        
    End Function

    וכך הצגתי את הטקסט :


    <%= FormatStr(RS("fullnews"))%>

  7. Alo הגיב:

    אם אתה משתמש ב PHP….
    תשתמש ב wordwrap, אם אתה משתמש במשהו אחר תנסה למצוא פקודה דומה.
    אולי אתה גם יכול לעשות:


    str_replace("n", ‘<br>’);

    ככה זה בPHP… ב ASP זה בטח דומה, העיקרון הוא להחליף את n ב <br>.

  8. לא
    הפונקציה של בילד יורדת שורה בכל אנטר של כותב ההודעה
    ואני לא חושב שכותב ההודעה ישבור לעצמו מילים

  9. ניר טייב הגיב:

    לא. כי זה מחליף את תו ירידת השורה
    של ה-ASCII (אם אני לא טועה)
    בכל מקרה chr(13) = לירידת שורה

שלח תשובה