24. maj 1999 - 17:13
Der er
11 kommentarer og 1 løsning
Erstat "+" med "%2B" i JavaScript
Jeg vil gerne erstatte "+" med "%2B" i JavaScript strReplace = /+/i ; strRecieve = strRecieve.replace(strReplace, ''%2B''); Den giver altså en grum fejl Bruger Javascript + til noget i sine strenge?? Findes der en anden måde??
Annonceindlæg fra Infor
ja, det er en af de interne tegn i javascript, men jeg kan godt lige glo på det og kigge tilbage senere...
ok... jeg har lige rodet lidt med det og fået dette til at virke: value1 = 'ord1 + ord2'; value2 = value1.replace('+','%2B'); alert(value2);
Jammen den virker jo!! Du er sgu hurtig esben :-)) Men øhm hvad nu hvis jeg har følgende value1 = 'ord1 +++ ord2 +++ ord3'; value2 = value1.replace('+','%2B'); så får du kun første + erstattet med %2B Der var den anden metode netop god da den erstattede alle +++ med %2B Ka du fixe den også?
det lyder lidt underligt at den ikke vil erstatte resten også... hmmm jeg tror du skal gøre sådan her: value1 = 'ord1 + ord2'; value2 = value1.replace('+','%2B'); value2 = value2.replace('++','%2B'%2B'); value2 = value2.replace('+++','%2B'%2B'%2B'); value2 = value2.replace('++++','%2B'%2B'%2B'); skriv hvis det ikke virker
Nope - jeg kan selfølig lave et loop og løbe strengen igennem tegn for tegn Men det ville være lettere hvis det kunne gøres for hele strengen som med strReplace = /+/i ; (hvor /i er alle forekomster)
la
Nybegynder
24. maj 1999 - 19:25
#6
Hvad med at bruge unescape(tekststreng)???
escape/unescape er til at konvertere SPACE til %20 og omvendt
s
Nybegynder
24. maj 1999 - 21:41
#8
Er der ikke bare sat for mange abostroffer ind? Skal det ikke se således ud istedet? Hvis det er rigtigt skal jeg nok svare. value1 = 'ord1 + ord2'; value2 = value1.replace('+','%2B'); value2 = value2.replace('++','%2B%2B'); value2 = value2.replace('+++','%2B%2B%2B'); value2 = value2.replace('++++','%2B%2B%2B');
ups jo, jeg havde lige kommet til at kopiere nogle apostroffer med *G*
value2 = value1.replace('+','%2B'); Den erstatter stadig kun en enkelt forekomst af %2B så ved 'sdfg+sdfg+wert+sdfg+xcvb' bliver den kun til 'sdfg%2Bsdfg+wert+sdfg+xcvb'
Nå, vi gider ikke rode mere i det problem hehe - jeg laver det i VB script - så må netscape brugerne undvære :-))
05. juni 2001 - 18:30
#12
Jeg ved at det er meget meget længe siden dette spørgsmål har været oppe. Men i min søgen på en lign. funktion som dotron ønskede faldt jeg over det. Jeg har fundet en løsning og måske er andre interesseret: temp = \"tekst + tekst ++++ tekst\" temp2 = temp.replace(/[\\+]/g, \"%2B\") alert(\"temp: \" + temp + \"\\ntemp2: \" + temp2)
Vi tilbyder markedets bedste kurser inden for webudvikling