0
votes

Obtenez plusieurs chaînes du résultat du contrôleur JSON AJAX

J'ai une touche envoyant une entrée d'un champ de texte sous un formulaire à mon contrôleur MVC à l'aide d'Ajax. Je souhaite maintenant que le contrôleur renvoie 2 chaînes en tant que JSON et remplissez ces chaînes dans les entrées HTML.

contrôleur xxx

vue xxx

< / p>


0 commentaires

3 Réponses :


2
votes

Vous avez à tort de paramètres attribués à tort au json () code> méthode pour renvoyer la réponse de JSONRESULT code>, car le deuxième paramètre est JSONREQUESTBehavior code> ou contenttype code>. Vous devez retourner contrôleur.json () code> réponse avec Paramètre unique Comme ceci: xxx pré>

puis modifier votre appel AJAX pour renvoyer 2 chaînes de la réponse par Utilisation de noms de propriétés: P>

$("#btnGet").click(function () {
    $.ajax({
        type: "POST", 
        url: "@Url.Action("GetName", "Home"), 
        data: { Name: $("#txtName").val() },
        success: function (result) {
            $('#FirstTextFieldToFill').val(result.Name);
            $('#SecondTextFieldToFill').val(result.SecondString);
        },
        failure: function (response) {
            alert(response.responseText);
        },
        error: function (response) {
            alert(response.responseText);
        }
    });
});


0 commentaires

0
votes

a travaillé comme ceci:

contrôleur xxx

Voir xxx < / pré>


0 commentaires

0
votes

Pour cela, vous devez créer une classe ayant deux chaînes, par exemple.

<script>
$(document).ready(function () {
    $("#btnGet").click(function () {
        $.ajax(
            {
                type: "POST", 
                url: "home/getName", 
                data: { 
                    Name: $("#txtName").val()
                },
                success: function (result) {
                    var jsonResult=JSON.parse( result );
                    $('#FirstTextFieldToFill').val(jsonResult.FirstString);
                    $('#SecondTextFieldToFill').val(jsonResult.SecondString);

                },
                failure: function (response) {
                    alert(response.responseText);
                },
                error: function (response) {
                    alert(response.responseText);
                }
            });

    });
});


1 commentaires

Merci mec. Déjà travaillé avec la solution postée auparavant. Celui-ci a fonctionné aussi bien