הוסטס - פורום אחסון האתרים הגדול בישראל

הוסטס - פורום אחסון האתרים הגדול בישראל (https://hosts.co.il/forums/index.php)
-   פורום תיכנות (https://hosts.co.il/forums/forumdisplay.php?f=14)
-   -   זקוק לעזרה עם JS (https://hosts.co.il/forums/showthread.php?t=52510)

X-T 21-08-07 19:39

זקוק לעזרה עם JS
 
אני מעונין שהתגיות <B> ו </B> יושמתו לפני הצגת הנתונים בשדה ה INPUT TEXT שלי,

או לחלופין, שיתעלם מתגיות HTML ויציג טקסט נטו,

אשמח לשמוע דרכים לפיתרון.

MasterNetwork 21-08-07 19:43

PHP קוד:

<?php
$text
="<B>SuperMen</B>";
$text=htmlspecialchars($text);
echo 
$text// output: SuperMen
?>

מודה היה לי משעמם וניסיתי לעשות את זה בסגנון PHP.NET חח : )

הפונקציה: htmlspecialchars
מסננת תגיות HTML

X-T 21-08-07 19:43

ציטוט:

נכתב במקור על ידי MasterNetwork (פרסם 545877)
PHP קוד:

<?php
$text
="<B>SuperMen</B>";
$text=htmlspecialchars($text);
echo 
$text// output: SuperMen
?>

מודה היה לי משעמם וניסיתי לעשות את זה בסגנון PHP.NET חח : )

הפונקציה: htmlspecialchars
מסננת תגיות HTML

ביקשתי ב JS >_>
וגם לא בדיוק מה שאני רוצה, אני מנסה ש INPUT מסוג טקסט יזהה תגיות ויעיף אותם ככה שאם יש לי
<b> xxxx </b>
אז אני מקבל רק xxxx

mayden 21-08-07 20:30

איך זה אפשרי? הרי JS זו שפת לקוח.
אם יהיה טקסט, אני ארשום <b>bla</b> ואז כאילו אני יעשה שלח וזה ישמיט לי את זה?
יש פתרון שפשוט תאסור על כתיבת <, > ו / .

Ron | CSite.co.il 21-08-07 20:34

אם תרצה ב php אז הפונקצייה היא: strip_tags()

X-T 21-08-07 20:39

אני רק רוצה לחסום את תגית <B> שלא תוצג לי בפלט דרך JS

X-T 21-08-07 20:53

מצאתי פיתרון אך נוצרה בעיה, אני חייב לקרוא למשתנה החדש שיצרתי שמסנן את התגיות כל פעם אז הגדרתי מחוץ למשתנה אך הוא עדיין קולט אך ורק את הערך האחרון שמתקבל מהשרת(AJAX)

זה הקוד, אשמח אם תנסו לעזור
PHP קוד:

var theone;

function 
handleSearchSuggest() {
    if (
searchReq.readyState == 4) {
        var 
ss document.getElementById('search_suggest')
        
ss.innerHTML '';
        var 
str searchReq.responseText.split("\n");
        for(
i=0str.length 1i++) {
    
            
theone str[i];
            
theone theone.replace("<b>","");
            
theone theone.replace("</b>","");
            
            var 
suggest '<div style="color:blue;cursor:pointer;"><u><div onmouseover="javascript:suggestOver(this);" ';
            
suggest += 'onmouseout="javascript:suggestOut(this);" ';
            
suggest += 'onclick="javascript:setSearch(theone)"';
            
suggest += 'class="suggest_link">' str[i] + '</div></u></div>';
            
ss.innerHTML += suggest;
            

        }
    }



בניה 21-08-07 21:49

אני גם נתקלתי בבעיה הזו פעם.
שעשיתי replace לטקסט שקיבלתי מ innerHTML וזה פשוט לא עבד במקרים מסוימים.
ואפילו גם בחיפוש טקסט בדף;P .
אם אני לא טועה זה כי הדפדפנים משנים קצת את הHTML ששמור אצלם בזיכרון.
פיתרון אפשרי זה לשמור עותק של התוכן של הDIV במשתנה JS(לא לקחת את התוכן, פשוט שיהיה מקום שהוא גם נשמר במשתנה)
ועליו לעשות את כל המשחקים, ואחרי כן לעדכן את ה DIV מהמשתנה.

X-T 21-08-07 22:16

ציטוט:

נכתב במקור על ידי בניה (פרסם 545934)
אני גם נתקלתי בבעיה הזו פעם.
שעשיתי replace לטקסט שקיבלתי מ innerHTML וזה פשוט לא עבד במקרים מסוימים.
ואפילו גם בחיפוש טקסט בדף;P .
אם אני לא טועה זה כי הדפדפנים משנים קצת את הHTML ששמור אצלם בזיכרון.
פיתרון אפשרי זה לשמור עותק של התוכן של הDIV במשתנה JS(לא לקחת את התוכן, פשוט שיהיה מקום שהוא גם נשמר במשתנה)
ועליו לעשות את כל המשחקים, ואחרי כן לעדכן את ה DIV מהמשתנה.

זה למען האמת מה שחשבתי לעשות אך לא כל כך הסתדר לי למען האמת.


כל הזמנים הם GMT +2. הזמן כעת הוא 22:53.

מופעל באמצעות VBulletin גרסה 3.8.6
כל הזכויות שמורות ©
כל הזכויות שמורות לסולל יבוא ורשתות (1997) בע"מ