我使用mvc4开发了一个Web应用程序。
在这种情况下,我需要使用javascript获取文本框值(实际上是在文本框中输入的文本)。
这是我正在使用的代码
@model PortalModels.WholeSaleModelUser
@using (Html.BeginForm("uploadFile", "WholeSaleTrade", FormMethod.Post, new { enctype = "multipart/form-data" }))
{
@Html.ValidationSummary(true)
<fieldset>
<legend>WholeSaleModelUser</legend>
<table>
<tr>
<td>
<div class="editor-label">
@Html.LabelFor(model => model.Name)
</div>
</td>
<td>
<div class="editor-field">
@Html.TextBoxFor(model => model.Name)
@Html.ValidationMessageFor(model => model.Name)
</div>
</td>
</tr>
</table>
<div id="partial">
<table>
<tr>
<td>
<img id="blah" src="../../Images/no_image.jpg" alt="your image" height="200px" width="170px" />
</td>
</tr>
</table>
<script type="text/javascript">
function loadUserImage() {
var userImg = document.getElementById("blah");
var imgNm = $("#Name").value;
userImg.src = "D:/FEISPortal/FortalApplication/Img/" + imgNm + ".png";
alert(imgNm);
alert(userImg.src);
}
</script>
在这种情况下,警报将值赋予&#34; undefined&#34;如果以下修改警报没有提供任何内容。
var imgNm = document.getElementById("Name").value;
的
var imgNm = $("#Name").value;
如何在文本框中输入文字?
答案 0 :(得分:5)
您应该使用val()功能:
var imgNm = $("#Name").val();
答案 1 :(得分:2)
如果你使用原生javascript,你应该使用它:
var userImgNameElement = document.getElementById("userImgNameId");
var userImgNameValue = userImgNameElement.getAttribute("value");
使用“onChanged”事件:
addEvent(document.getElementById('userImgNameId'), 'change', function(event) {
var userImgNameValue = event.target.getAttribute("value");
});
答案 2 :(得分:1)
在input
元素中,可以在该元素的value
属性中找到值。因此可以通过document.getElementById('idOfElement').value
检索它。
在textarea
元素中,它在起始标记和结束标记之间具有值。因此,value
属性为空。在原始javascript中,您可以使用document.getElementById('idOfElement').innerText
检索内容。
如果您使用的是jQuery,Ufuk的.val()
解决方案更容易使用。