J'utilise l'objet JSON comme entrée dans le champ de texte. Y a-t-il un moyen de valider cet objet JSON dans JavaScript ?? P>
5 Réponses :
exécutez-le via un parser JSON ( JSON2.JS si vous n'utilisez pas une bibliothèque avec un intégré) et voir si vous obtenez des données en arrière. p>
Oui, il y a plusieurs bibliothèques JSON disponibles pour votre utilisation. P>
Essayez-les lors de l'utilisation de Java: P>
ou si vous préférez simple JavaScript, vous pouvez aller avec p>
David Walsh a donné un exemple complet de comment faire cela dans JavaScript à l'aide de Maotools, JSON Schema, dans ce qui suit blog http://davidwalsh.name/json-validation . Donnez-lui un aller. P>
bâtiment sur l'idée de @quentin, vous pouvez simplement faire quelque chose comme: Cela nécessitera json2.js Pour être déployé dans la page afin de garantir la prise en charge du navigateur croisé pour le JSON code>
objet code>. p> p>
Merci d'avoir répondu. Mais je reçois une erreur pour un objet JSON valide aussi.
{"ID": "B9C8E5F2-50AE-102C-8DA0-DV8GB9F250AE", "AT": 2, "Tmax": 100, "Imp": [{"Impide": "DV8GB9F2-50AE-102C-8DA0-12313A002CD2" "H": 50, "W": 320, "Instl": 0}], "App": {"Aide": "73737", "Nom": "Nous régions", "Ver": "2.1. 3 "}," périphérique ": {" dpid ":" dfe9f2bdfe9f2bdfe9f2bdfe9f2bdfe9f2bdfe9f2b "," IP ":" 124.32.53.1 "," UA ":" Mozilla% 2f5.0% 20 (iPhone% 3b% 20u% 3b% 20CPU% 20Iphone "}}
Il semble travailler pour moi, consultez ce Jsfiddle .
J'utilise cette fonction sur "OnSubmit". Devrait-il être un problème ??
Ne devrait pas être. Est-il possible de configurer un jsfiddle pour démontrer le scénario dans lequel le code échoue?
Ça a marché. Je n'allais pas passer la valeur correcte à la fonction.Merci u pour votre aide.
Son me donne une erreur pour la même chaîne JSON dans la vue de compatibilité IE.
Avez-vous JSON2.JS inclus dans votre page?
Cela ne fonctionne pas lorsque vous mettez des chiffres comme une entrée. Par exemple: console.log (isvalidjson ("123")); // True Je pense que nous devons également vérifier si l'entrée est un numéro.
@ user3816621 Une chaîne numérique est une chaîne JSON valide.
Si vous souhaitez valider l'objet à un certain schéma, vous pouvez essayer JSD Validator p>
Voici le code qui a fonctionné pour moi,
$scope.jsonFunc = function(json){ try { $scope.jsonData = JSON.stringify(JSON.parse(json), null, 2); return true; $scope.errorMessage = "Valid JSON"; } catch (e) { $scope.errorMessage = e.message; return false; } }
Essayez-vous de valider qu'il est syntaxiquement valide JSON ou qu'elle est conforme à un certain schéma?
J'essaie simplement de vérifier si l'objet entré dans Textfield est valide JSON.
Vous pouvez utiliser une fonction intval par exemple $ ID = Intval ($ ID); echo json_encode ($ données)