Quelle est la méthode recommandée pour accéder à la valeur d'une zone de texte sur une page HTML?Comment accéder au contenu d'une zone de texte HTML sur une page?
Répondre
En utilisant JQuery, vous pouvez faire quelque chose comme ceci:
$("#MyTextBoxId").val()
Cela dépend de ce que vous avez l'intention de faire avec les données. Si vous avez besoin de le manipuler sur le client, la référence jquery est appropriée. Si vous devez le passer à une logique métier dans votre modèle, l'action du contrôleur appropriée est l'endroit où le faire. À partir de l'action du contrôleur, vous avez accès à l'objet de requête, qui aura la valeur de la zone de texte. En outre, si vous avez un objet de modèle qui correspond à l'ID de la zone de texte, vous pouvez utiliser la fonction UpdateModel pour mapper les valeurs automatiquement.
peut-être que je suis très loin de .. j'ai essayé de le faire mais rien ne s'est produit .. Html.ViewContext.Controller.ControllerContext.HttpContext.Request ["Calendar_Type"] – devforall
Si vous voulez le contenu de votre zone de texte sur un soumettre, vous devriez avoir une méthode dans votre contrôleur qui accepte l'élément en tant que paramètre. Par exemple, si votre formulaire a la zone de texte avec id « myText » votre contrôleur devrait ressembler à:
[ActionName("WhateverYourShowFormActionIsCalled"), AcceptVerbs(HttpVerbs.Post)]
public ActionResult MyControllerAction(string myText)
{
//Do stuff with myText
}
Cela doit être fait sur le côté client. Vous pouvez toutefois envoyer une requête AJAX si le serveur requiert les informations. Exemples dans Scriptaculous/Prototype
sens unique
function send() {
var val = $F('textBoxName'); // put own here
var url = "/ajax/textboxupdate"; // put own here
Ajax.Request (url,
{ method: 'get',
parameters: {'val':val},
onSuccess: new function(tr) { success(tr); }
});
}
Pour les deux sens, utilisez le paramètre tr.responseText
. (API ref)
ASP.NET AJAX peut également être utilisé - voir the website.
En JavaScript, si vous souhaitez accéder au contenu d'une zone de texte, utilisez l'attribut value
.
exemple ci-dessous (type quelque chose dans toute la boîte, puis cliquez à l'extérieur de celui-ci):
function logThis(elm){
console.log(elm.value);
}
<input type="text" onblur="logThis(this);" />
<textarea onblur="logThis(this);"></textarea>
qu'entendez-vous par l'accès au contenu du page..do vous dire tapez quelque chose dans et sur un soumettre être en mesure de voir ce qui a été tapé à partir du contrôleur? – TStamper