Yii Framework Forum: JavaScript und Umlaute - Yii Framework Forum

Jump to content

Page 1 of 1
  • You cannot start a new topic
  • You cannot reply to this topic

JavaScript und Umlaute Rate Topic: -----

#1 User is offline   yoshi 

  • Standard Member
  • PipPip
  • Yii
  • Group: Members
  • Posts: 170
  • Joined: 28-February 09
  • Location:Germany

Posted 24 March 2009 - 08:34 AM

Hallo zusammen,

ich habe mal wieder den deutschen Thread aufgesucht, da ich mir gedacht habe, dass bestimmt schon andere hier dieses Problem hatten  ;)

Und zwar folgendes:
ich möchte eine Confirm-Nachricht mit Umlauten versehen. Klar, aus so was wie
      <?php echo CHtml::linkButton('Delete',array(
        'submit'=>'',
        'params'=>array('command'=>'delete','id'=>$model->ID),
        'confirm'=>"Are you sure to delete #{$model->ID}?")); ?>

wird ja bei uns meist was mit 'löschen'.

Normalerweise würde ich dafür escape/unescape mit ASCII-Werten benutzen oder was mir noch lieber wäre, wäre Unicode ála
u00F6
...

Ersteres funktioniert nicht, weil der String in Anführungszeichen eingeschlossen wird (ist ja klar). Bei der Unicode-Variante macht mir die CJavaScript::quote Funktion einen Strich durch die Rechnung, die auf das confirm-Element angewandt wird.

Wie kann ich das möglichst einfach und ohne im Framework-Code rumzubasteln lösen??

Vielen Dank schonmal  :)
yoshi
0

#2 User is offline   Mike 

  • Elite Member
  • PipPipPipPipPip
  • Yii
  • Group: Members
  • Posts: 3,016
  • Joined: 06-October 08
  • Location:Upper Palatinate

Posted 25 March 2009 - 04:09 AM

Hmm, wieso so kompliziert? Wenn du alles sauber auf UTF-8 hältst, brauchst du gar nix codieren, sondern schreibst einfach "löschen".

Evtl. hilft auch dieser Artikel, um nochmal alles durchzuchecken:
http://www.yiiframew...oc/cookbook/16/
0

#3 User is offline   yoshi 

  • Standard Member
  • PipPip
  • Yii
  • Group: Members
  • Posts: 170
  • Joined: 28-February 09
  • Location:Germany

Posted 25 March 2009 - 05:46 AM

Hi,
danke. Nun, vom Prinzip her habe ich damit auch kein ernsthaftes Problem, da ich alles in UTF8 habe und es auch korrekt angezeigt wird, wenn ich die Umlaute direkt in den View schreibe.

Allerdings war ich etwas verwundert, dass es nicht die Möglichkeit gibt z.B. in einer Confirm-Benachrichtigung Unicode Zeichencodes zu verwenden...
0

#4 User is offline   Mike 

  • Elite Member
  • PipPipPipPipPip
  • Yii
  • Group: Members
  • Posts: 3,016
  • Joined: 06-October 08
  • Location:Upper Palatinate

Posted 25 March 2009 - 06:14 AM

Habs grad nochmal getestet: Auch das klappt bei mir ohne Probleme. Heißt das, das hier geht bei dir nicht?

<?php echo CHtml::linkButton('Delete',array(
          'submit'=>'',
          'params'=>array('command'=>'delete','id'=>$model->ID),
          'confirm'=>"Wirklich löschen")); ?>

0

#5 User is offline   yoshi 

  • Standard Member
  • PipPip
  • Yii
  • Group: Members
  • Posts: 170
  • Joined: 28-February 09
  • Location:Germany

Posted 25 March 2009 - 06:51 AM

Hi,
doch das klappt bei mir auch. Dazu muss die Kodierung natürlich stimmen.
Allerdings bin ich es gewohnt für solche Zeichen die entsprechenden Codes anzugeben (wie man es bei einer normalen HTML-Seite ja eigentlich auch immer macht / machen sollte).

Das hier funktioniert nicht:
<?php echo CHtml::linkButton('Delete',array(
          'submit'=>'',
          'params'=>array('command'=>'delete','id'=>$model->ID),
          'confirm'=>"Wirklich lu00F6schen")); ?>


Es würde den String durch das quoting genau so in der Confirm-Nachricht anzeigen.

0

#6 User is offline   Mike 

  • Elite Member
  • PipPipPipPipPip
  • Yii
  • Group: Members
  • Posts: 3,016
  • Joined: 06-October 08
  • Location:Upper Palatinate

Posted 25 March 2009 - 06:58 AM

Also mein Verständnis von Unicode ist, dass man eben genau diese ganzen Codierungen nicht mehr machen muss. Das ist ja irgendwo Sinn der Übung.  Javascript arbeitet intern auch auf Unicode-basis, versteht also alle Zeichen ohne Codierung.

All die Jahre wo ich jetzt Unicode im Web verwende, hatte ich nie wieder Probleme. Kann dir also ruhigen Gewissens empfehlen: Schreib einfach so, "wie mans spricht" ;) und es wird funktionieren.
0

#7 User is offline   yoshi 

  • Standard Member
  • PipPip
  • Yii
  • Group: Members
  • Posts: 170
  • Joined: 28-February 09
  • Location:Germany

Posted 25 March 2009 - 11:45 AM

Genau das werde ich jetzt auch einfach machen!  ;D

Danke und Gruß,
yoshi
0

Share this topic:


Page 1 of 1
  • You cannot start a new topic
  • You cannot reply to this topic

1 User(s) are reading this topic
0 members, 1 guests, 0 anonymous users