Привет, я не уверен, как вернуть неповрежденные данные в текст ответа объекта xmlhttprequest с помощью innerhtml, то есть без разбора. В листинге 1 это работает. Но когда я использовал листинг 2, как показано ниже, для отправки текста из php, это не сработало. А в листинге 3 показан php-скрипт. На выходе я вижу, что return - это текст, а не обработка функцией dygraph. Спасибо заранее.
Listing1:-
xmlhttp.onreadystatechange=function()
{
if (xmlhttp.readyState==4 && xmlhttp.status==200)
{
z = new Dygraph(document.getElementById("showrealchart"),
"Batch,S1,S2,S3,S4,S5,S6,S7,S8,S9,S10,\n" +
"1, 3.65, 5.00, 4.53, 5.01, 10.50, 0.03, 9.05, 5.05, 5.22, 6.23\n"+
"7, 3.65, 5.03, 4.50, 5.02, 9.50, 0.05, 9.15, 5.55, 5.20, 6.23\n"+
"8, 3.67, 5.00, 4.53, 4.99, 9.00, 0.04, 9.30, 5.10, 2.30, 6.22\n"+
"12, 3.65, 5.04, 4.53, 4.99, 10.05, 0.35, 9.00, 5.23, 5.20, 6.21\n"+
"16, 3.66, 5.00, 4.50, 4.98, 10.50, 1.01, 9.01, 5.20, 5.10, 6.24\n"+
"18, 3.65, 5.02, 4.70, 5.00, 9.80, 0.45, 9.14, 5.63, 5.15, 6.23\n");
}
}
Теперь я хотел бы вернуть данные в точной форме.
Listing 2:-
xmlhttp.onreadystatechange=function()
{
if (xmlhttp.readyState==4 && xmlhttp.status==200)
{
z = new Dygraph
document.getElementById("showrealchart").innerHTML=xmlhttp.responseText;
И Php-скрипт.
Listing 3;-
<?php
print '"Batch,S1,S2,S3,S4,S5,S6,S7,S8,S9,S10,\n" +
"1, 3.65, 5.00, 4.53, 5.01, 10.50, 0.03, 9.05, 5.05, 5.22, 6.23\n"+
"7, 3.65, 5.03, 4.50, 5.02, 9.50, 0.05, 9.15, 5.55, 5.20, 6.23\n"+
"8, 3.67, 5.00, 4.53, 4.99, 9.00, 0.04, 9.30, 5.10, 2.30, 6.22\n"+
"12, 3.65, 5.04, 4.53, 4.99, 10.05, 0.35, 9.00, 5.23, 5.20, 6.21\n"+
"16, 3.66, 5.00, 4.50, 4.98, 10.50, 1.01, 9.01, 5.20, 5.10, 6.24\n"+
"18, 3.65, 5.02, 4.70, 5.00, 9.80, 0.45, 9.14, 5.63, 5.15, 6.23\n";';
?>
header('Content-type: text/plain')
перед печатью результата - person Rezigned   schedule 12.10.2012"\n"
на самом деле означает перевод строки, поэтому вашz
в листинге 1 должен получить многострочную строку; Но в вашем PHP в листинге 3 вы отправляете литерал\n
и двойные кавычки. Я думаю, это может быть то, что вы хотите проверить. - person Passerby   schedule 12.10.2012