Les erreurs du plug-in du formulaire jQuery lors du renvoi des données JSON en fonction de JQuery v1.4.2; modifier le contenu suivant pour récupérer;
Le format de données de sortie d'arrière-plan d'origine est: {SiteName: 'Developer Network', SITEURL: 'www.aaa.net', niveau: 10} Il doit être changé en {"SitEname": "Developer Network", "SITEURL": "www .aaa.net", "niveau": 10}
C'est-à-dire que le nom doit être inclus dans les doubles citations; car JQuery version 1.4.2 ajoute un jugement régulier dans la méthode de Parsejson
| if ( /^[ germ 4}) / g , "@") .replace (/ "[^" \ n r] * "| true | false | null | -? d + (?: . d *)? (?: [ee] [+ -]? d +)? / g , "]") .replace (/ (?: ^ |: |,) (?: s * [) + / g, ""))) { // Essayez d'abord de l'analyseur JSON natif } autre { |
Où modifier le plugin de formulaire jQuery
| if (scr || s.textarea) { // Voir si une réponse intégrée par l'utilisateur dans TextArea var ta = doc.getElementsByTagName ('textArea') [0]; if (ta) { xhr.ResponSeText = ta.Value; } else if (scr) { // compte pour les navigateurs injectant pré autour de la réponse JSON var pre = doc.getElementsByTagName ('pre') [0]; if (pre) { xhr.ResponSeText = pre.innerHTML; } } } else if (s.datatype == 'xml' &&! xhr.responsexml && xhr.ResponSeText! = null) { xhr.Responsexml = toxml (xhr.ResponSeText); } |
Modifié à:
| if (scr || s.textarea) { // Voir si une réponse intégrée par l'utilisateur dans TextArea var ta = doc.getElementsByTagName ('textArea') [0]; if (ta) { xhr.ResponSeText = ta.Value; } else if (scr) { // compte pour les navigateurs injectant pré autour de la réponse JSON var pre = doc.getElementsByTagName ('pre') [0]; if (pre) { xhr.ResponSeText = pre.innerHTML; } else xhr.ResponSeText = doc.body.innerhtml; } } else if (s.datatype == 'xml' &&! xhr.responsexml && xhr.ResponSeText! = null) { xhr.Responsexml = toxml (xhr.ResponSeText); } |
Adresse originale: http://www.vifo.net/program/javascript/10090191.shtml