2010-11-23 6 views
0

j'ai une fonction ajax dans home.php qui me redonner cette réponse html de elaborate.phpJQuery diviser problème html réponse ajax

dans elaborate.php j'ai cette situation résumée :

if(a<b) 
{echo "yes.";} 
else 
{echo "no.";} 

echo<<<EO 
insert a title...aand something more! 
EO; 

retour dans home.php Je veux diviser en deux la r réponse je reçois, parce que je dois utiliser chaque partie dans des situations différentes.
Appelons 'réponse' Je l'ai fait:

var splitResult=response.split(".",2); 
var yesNo=splitResult[0]; 
var article=splitResult[1]; 
alert(yesNo+article); 

if(yesNo=='yes'){/*do something*/} 
$(article).appendTo("#myDiv"); 

Le problème cela et vous pouvez simplement comprendre en regardant le alerte:

yes 
insert a title 
/*the alert doesnt show the rest of article var cause the dot:"...and something more!"*/ 

la fonction split est divisant même encore, je mets la limite de 2..why ??

merci les gars
Luca

Répondre

1

Le limit argument for .split() ne dit pas "fractionnement d'arrêt après 2" `, il est dit "split normalement, me donner les 2 premiers résultats".

Je pense que ce que vous voulez est ceci:

var splitResult=response.split("."); 
var yesNo=splitResult[0]; 
var article=splitResult.slice(1).join("."); 
alert(yesNo+article); 

You can test it here ... mais j'utiliser un séparateur différent, par exemple:

var response = "yes|||insert a title...and something more!" 
var splitResult=response.split("|||"); 
var yesNo=splitResult[0]; 
var article=splitResult[1]; 
alert(yesNo+article); 

You can test that version here.

+0

oui cela fonctionne (sans la limite ..)! =) merci – luca