2010-07-12 5 views
0

Dans mon application Web, j'ai une zone de texte appelée "Adresse" qui est multiligne et comporte 3 lignes et 250 caractères.Problème de zone de texte multiligne ASP.NET avec javascript et AJAX (Jquery)

J'appelle une fonction javascript dans laquelle j'appelle AJAX pour envoyer les données à un service web pour un traitement mais AJAX est incapable de traiter une variable qui contient du texte multiligne. Je lis la valeur multilbox textbox comme ceci dans la fonction javascript.

var puid = document.getElementById('<%=userid.ClientID%>').value; 
var paddress = document.getElementById('<%=xaddress.ClientID%>').value; 

et en passant comme ceci.

$.ajax({ 
    type: "POST", 
    url : "DataService.asmx/UpdateProfile", 
    data: "{'puserid': ' " + puid + 'padd': ' " + paddress + " '}", 
    contentType: "application/json; charset=utf-8", 
    dataType: "json", 
    success: OnSuccess, 
    error: OnError 
}); 

Si je commente les paramètres de paddress en ajax « données: » il fonctionne bien d'autres ajax sage se poursuit « OnError » ... Oh, je viens de comprendre que mon adresse a Zone « B » (apostrophe) C'est pourquoi c'est son problème. Donc, comment analyser apostrophe comme valeur de zone de texte et lire dans la variable javascript et réécrire dans la base de données similaire.

Répondre

0

J'utiliserais plutôt la fonction jQuery Post. Vos URI de requête GET ne doivent pas contenir de nouveaux caractères de ligne.

0
var puid = document.getElementById('<%=userid.ClientID%>').value; 
var paddress = document.getElementById('<%=xaddress.ClientID%>').value; 

puid => string value 
paddress => string value 

$.ajax({ 
    type: "POST", 
    url : "DataService.asmx/UpdateProfile", 
    data: {'puserid': puid , 'padd': paddress }, need = >"," 
    contentType: "application/json; charset=utf-8", 
    dataType: "json", 
    success: OnSuccess, 
    error: OnError 
}); 
+0

Oh j'ai résolu mon problème en écrivant var newadd = paddress.replace (/ '/ g, "\\'"); :) – user342944

Questions connexes