Benutzer mit den meisten Antworten
Probleme mit dem deutschen Zeichensatz.

Frage
-
Hallo NG,
ich nutze .NET 4.5 und MVC4.
In meiner TextBox gebe ich "ÖÄÜ" ein. Dann rufe ich mit einem button mein JavaScript.
function SendMessage() {
alert(ClientMessage.GetText());
$.ajax({
url: '@DevExpressHelper.GetUrl(new { Controller = "Chat", Action = "SendMessage" })' + "?Msg=" + ClientMessage.GetText(),
success: MessageSend,
error: MessageSendError,
type: 'POST',
dataType: 'json'
});}
Im alert werden mit die richtigen Zeichen angezeigt.
Im Controller:
public ActionResult SendMessage(string Msg)
{
ist der Inhalt ���.
}Ich denke das ist ein Problem des encondig. Aber wie mache ich es???
Danke im voraus für jeden Hinweis und Tipp.
Grüße Ingo
Antworten
-
Hallo Stefan,
danke für die Hilfe. Ich habe folgende Lösung eben gefunden.
function SendMessage() { btnSend.SetEnabled(false); $.ajax({ url: '@DevExpressHelper.GetUrl(new { Controller = "Chat", Action = "SendMessage" })', data: { Msg: ClientMessage.GetText() }, success: MessageSend, error: MessageSendError, type: 'POST', dataType: 'json' });
Nach dem einfügen des data: klappt es jetzt.
Grüße Ingo
- Als Antwort markiert Stefan FalzModerator Mittwoch, 20. November 2013 12:44
Alle Antworten
-
Hi,
bin jetzt kein ASP Experte für mich sieht es aber so aus als ob Json die Umlaute nicht richtig darstellt.
Google hat dazu folgendes gebracht.
http://www.tutorials.de/javascript-ajax/361309-json-problem-mit-umlauten.html
MFG
Björn
-
Hallo Ingo,
was @DevExpressHelper... sein soll, weiß ich nicht, ich würde das ggfs. mal weg lassen. ClientMessage.GetText() sollte die Inhalt UrlEncoded zurückliefern, damit werden Umlaute und andere Sonderzeichen korrekt maskiert.
Ansonsten würde mir nur noch einfallen, dass Du beim jQuery.ajax Aufruf den ContentType mit angibst, wobei das eher für den Body eine Rolle spielt, nicht für den URL an sich.
function SendMessage() { alert(ClientMessage.GetText()); $.ajax({ ... dataType: 'json', contentType: "application/json; charset=utf-8" }); }
Für die korrekte Umwandlung der Umlaute und Sonderzeichen schau dir mal das hier an:
http://www.w3schools.com/tags/ref_urlencode.asp
Gruß, Stefan
Microsoft MVP - Visual Developer ASP/ASP.NET
http://www.asp-solutions.de/ - Consulting, Development
http://www.aspnetzone.de/ - ASP.NET Zone, die ASP.NET Community -
Hallo Stefan,
danke für die Hilfe. Ich habe folgende Lösung eben gefunden.
function SendMessage() { btnSend.SetEnabled(false); $.ajax({ url: '@DevExpressHelper.GetUrl(new { Controller = "Chat", Action = "SendMessage" })', data: { Msg: ClientMessage.GetText() }, success: MessageSend, error: MessageSendError, type: 'POST', dataType: 'json' });
Nach dem einfügen des data: klappt es jetzt.
Grüße Ingo
- Als Antwort markiert Stefan FalzModerator Mittwoch, 20. November 2013 12:44