如何访问页面上HTML文本框的内容?

如何访问页面上HTML文本框的内容?

问题描述:

访问HTML页面上文本框的值的建议方式是什么?如何访问页面上HTML文本框的内容?

+1

你这是什么意思访问你的意思是page..do内容在提交中键入内容并能够查看控制器中输入的内容? – TStamper 2009-01-22 17:34:12

使用jQuery你可以做这样的事情:

$("#MyTextBoxId").val() 

这取决于你打算用数据做什么。如果你需要在客户端上操作它,jquery引用是合适的。如果您需要将它传递给模型中的某些业务逻辑,那么相应的控制器操作就是完成此操作的地方。从控制器操作中,您可以访问请求对象,该对象将具有文本框的值。此外,如果您有一个与文本框ID相对应的模型对象,则可以使用UpdateModel函数自动映射值。

+0

也许我很遥远..我试着做这个,但没有发生.. Html.ViewContext.Controller.ControllerContext.HttpContext.Request [“Calendar_Type”] – devforall 2009-01-22 16:18:29

如果你想要提交文本框的内容,那么你应该有一个方法在你的控制器接受该项目作为参数。例如,如果您的表单中包含ID为“myText”的文本框,则您的控制器应该如下所示:

[ActionName("WhateverYourShowFormActionIsCalled"), AcceptVerbs(HttpVerbs.Post)] 
public ActionResult MyControllerAction(string myText) 
{ 
    //Do stuff with myText 
} 

这必须在客户端完成。但是,如果服务器需要这些信息,您可以发送AJAX请求。在Scriptaculous的/原型
单向实例

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); } 
    }); 
} 

对于双向,使用tr.responseText参数。 (API ref
ASP.NET AJAX也可以使用 - 请参阅the website

在JavaScript中,如果要访问文本框的内容,请使用属性value。下面

例(类型里面的东西任何箱子,然后单击它的外):

function logThis(elm){ 
 
    console.log(elm.value); 
 
}
<input type="text" onblur="logThis(this);" /> 
 
<textarea onblur="logThis(this);"></textarea>