Maison >interface Web >Questions et réponses frontales >Comment obtenir des données javascript à partir d'une réponse aspx

Comment obtenir des données javascript à partir d'une réponse aspx

WBOY
WBOYoriginal
2023-05-17 14:06:37807parcourir

Dans le développement ASP.NET, vous rencontrez généralement des situations où vous devez obtenir des données renvoyées par le serveur en JavaScript, et ces données sont souvent générées et renvoyées dans la réponse ASPX. Cet article explique comment obtenir des données JavaScript à partir de la réponse ASPX.

1. Générer des données JavaScript dans les pages ASPX

Il existe de nombreuses façons de générer des données JavaScript dans les pages ASPX. Cet article présente brièvement une méthode courante, à savoir via HiddenField. control stocke les données dans la page, qui sont ensuite récupérées et traitées en JavaScript.

  1. Ajoutez d'abord un contrôle HiddenField dans le fichier ASPX :
<asp:HiddenField ID="hdnData" runat="server" />
  1. Générez le JavaScript qui doit être transmis dans l'ASPX .cs file Data et stockez les données dans HiddenField :
protected void Page_Load(object sender, EventArgs e)
{
    // 生成需要传递的数据
    string data = "hello world";
    // 将数据存储在HiddenField中
    hdnData.Value = data;
}

2. Obtenez les données de réponse ASPX en JavaScript

La réponse renvoyée par ASPX contient beaucoup d'informations, si nous avons besoin d'obtenir les données JavaScript, nous pouvons utiliser la méthode suivante :

  1. Utilisez la méthode d'écriture de l'objet Document pour écrire du code JavaScript dans la page et accédez à ASPX.cs dans le code Les données renvoyées par le fichier. Par exemple :
<script type="text/javascript">
    document.write('<script type="text/javascript" src="js/myjs.js"><'+'/script>');
    var data = '<%= hdnData.Value %>';
    // 在这里对数据进行处理
</script>
  1. Utilisez l'objet XMLHttpRequest en JavaScript pour envoyer une requête à la page ASPX, puis obtenez les données renvoyées dans la fonction de rappel. Par exemple :
function loadData() {
    var xmlhttp = new XMLHttpRequest();
    xmlhttp.onreadystatechange = function() {
        if (xmlhttp.readyState == 4 && xmlhttp.status == 200) {
            var data = xmlhttp.responseText;
            // 在这里对数据进行处理
        }
    };
    xmlhttp.open("GET", "myPage.aspx", true);
    xmlhttp.send();
}

Les deux méthodes ci-dessus peuvent obtenir les données JavaScript renvoyées par la page ASPX. La différence est que la première méthode obtient les données directement lorsque la page est chargée, et la deuxième méthode Les données sont obtenues via des requêtes asynchrones en JavaScript.

3. Notes

  1. Les données renvoyées dans la page ASPX doivent respecter les règles de syntaxe JavaScript, sinon cela entraînera l'échec de l'exécution du code JavaScript, affectant finalement le l'ensemble de l'application, le fonctionnement normal du programme.
  2. Lors de l'obtention des données de réponse renvoyées par ASPX, il convient de noter que les données de réponse ne sont pas nécessairement du code JavaScript pur, et peuvent contenir d'autres types de données telles que HTML, CSS, XML, etc., qui doivent être inclus dans l'analyse et le traitement JavaScript.
  3. Afin d'éviter les problèmes inter-domaines, généralement lors d'une demande de données à partir d'une page ASPX en JavaScript, la demande doit être envoyée à la page ASPX sous le même nom de domaine. Dans le cas contraire, les données pourraient ne pas être obtenues en raison des restrictions du navigateur.

En bref, obtenir des données JavaScript à partir de la réponse d'ASPX nécessite de générer et de renvoyer les données d'origine dans la page ASPX, puis de les analyser et de les traiter en JavaScript. Grâce au formulaire ci-dessus, nous pouvons facilement réaliser le transfert de données front-end et back-end dans les applications ASP.NET.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn