Losing line-feeds/carriage-returns on post
Any help on how I would keep carriage-returns in the text that I am posting?
function checkPlayState(checkStatus) { var Player = document.getElementById("NSPlay"); if (Player.playState == 0 || Player.playState == 1) { // 0 vs 8 if (checkStatus == true) { var tex_t = document.getElementById("ctl00_ContentPlaceHolder1_TextArea1").innerHTML; // The following javascript function takes the URL of the target page 开发者_JAVA百科and // a name / value paire and POSTs the data to the supplied URL by dynamically // creating a form and then submitting it... // but I am loosing line-feeds/carage-returns in the transfer of the text var fil_e = "Speach.aspx" // target url post_to(fil_e, tex_t); function post_to (file, text) { var myForm = document.createElement("form"); myForm.action = file; myForm.method = "post"; var myInput = document.createElement("input"); myInput.setAttribute("name", "key"); myInput.setAttribute("value", tex_t); // squares show in the "Text Visualizer" when yellow is here myForm.appendChild(myInput); // squares have gone in the "Text Visualizer" when we are here but show in the value field of watch window??? document.body.appendChild(myForm); myForm.submit(); document.body.removeChild(myForm); } return; } else { window.setTimeout("checkPlayState(true)", 500); } } else { window.setTimeout("checkPlayState(false)", 500); } } ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' I have this in aspx file to retrieve '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' Dim tex_t As Object tex_t = Request.Form("key") If tex_t "" Then ' Here while debugging the squares are gone?!? TextArea1.InnerText = tex_t ' it is the same textarea too Else End If
use URL encoding. a new line is represented as %0A
http://www.javascripter.net/faq/escape.htm says you can use the javascript function escape
function checkPlayState(checkStatus) {
var Player = document.getElementById("NSPlay");
if (Player.playState == 0 || Player.playState == 1) { // 0 vs 8
if (checkStatus == true) {
var tex_t = escape(document.getElementById("ctl00_ContentPlaceHolder1_TextArea1").innerHTML);
// The following javascript function takes the URL of the target page and
// a name / value paire and POSTs the data to the supplied URL by dynamically
// creating a form and then submitting it...
// but I am loosing line-feeds/carage-returns in the transfer of the text
var fil_e = "Speach.aspx" // target url
post_to(fil_e, tex_t);
function post_to (file, text) {
var myForm = document.createElement("form");
myForm.action = file;
myForm.method = "post";
var myInput = document.createElement("input");
myInput.setAttribute("name", "key");
myInput.setAttribute("value", tex_t); // squares show in the "Text Visualizer" when yellow is here
myForm.appendChild(myInput); // squares have gone in the "Text Visualizer" when we are here but show in the value field of watch window???
document.body.appendChild(myForm);
myForm.submit();
document.body.removeChild(myForm);
}
return;
} else {
window.setTimeout("checkPlayState(true)", 500);
}
} else {
window.setTimeout("checkPlayState(false)", 500);
}
}
Then for your aspx file use:
Dim tex_t As Object
tex_t = Request.Form("key")
If tex_t "" Then ' Here while debugging the squares are gone?!?
TextArea1.InnerText = Server.UrlDecode(tex_t) ' it is the same textarea too
Else
End If
for (i = 0; i -1) { // tex_t = tex_t.replace("something", %0A ); } }
UrlDecode did the trick Chris... Sorry too, I can't see an "add comment link" anywhere.
精彩评论