如何使用jQuery设置input文本的值

我有一个input文本是这样的:

<div class="editor-label"> @Html.LabelFor(model => model.EmployeeId, "Employee Number") </div> <div class="editor-field textBoxEmployeeNumber"> @Html.EditorFor(model => model.EmployeeId) @Html.ValidationMessageFor(model => model.EmployeeId) </div> 

我想使用jquery设置这个input文本的值,所以我这样做:

 <script type="text/javascript" language="javascript"> $(function() { $('.textBoxEmployeeNumber').val("fgg"); }); </script> 

然而,它不工作…我的语法错误是什么?

您的select器正在检索文本框的周围<div class='textBoxEmployeeNumber'>而不是其中的input。

 // Access the input inside the div with this selector: $(function () { $('.textBoxEmployeeNumber input').val("fgg"); }); 

看到输出HTML后更新

如果ASP.NET代码可靠地输出带有id属性id='EmployeeId'的HTML <input> ,则可以更简单地使用:

 $(function () { $('#EmployeeId').val("fgg"); }); 

如果没有这个,你将需要在你的浏览器的错误控制台validation你没有其他的脚本错误导致这个失败。 上面的第一个例子在这个演示中正确地工作。

使用jQuery,我们可以使用下面的代码:

按input名称select:

 $('input[name="textboxname"]').val('some value') 

通过input类select:

 $('input[type=text].textboxclass').val('some value') 

通过inputIDselect:

 $('#textboxid').val('some value') 
 $(document).ready(function () { $('#EmployeeId').val("fgg"); //Or $('.textBoxEmployeeNumber > input').val("fgg"); //Or $('.textBoxEmployeeNumber').find('input').val("fgg"); }); 

对于具有ID的元素

 <input id="id_input_text16" type="text" placeholder="Ender Data"></input> 

您可以将该值设置为

 $("#id_input_text16").val("testValue"); 

文档在这里 。

这里是另一个file upload的变体,它有一个比默认file upload浏览button更好看的引导button。 这是html:

 <div class="form-group"> @Html.LabelFor(model => model.FileName, htmlAttributes: new { @class = "col-md-2 control-label" }) <div class="col-md-1 btn btn-sn btn-primary" id="browseButton" onclick="$(this).parent().find('input[type=file]').click();">browse</div> <div class="col-md-7"> <input id="fileSpace" name="uploaded_file" type="file" style="display: none;"> @*style="display: none;"*@ @Html.EditorFor(model => model.FileName, new { htmlAttributes = new { @class = "form-control", @id = "modelField"} }) @Html.ValidationMessageFor(model => model.FileName, "", new { @class = "text-danger" }) </div> </div> 

这是脚本:

  $('#fileSpace').on("change", function () { $("#modelField").val($('input[name="uploaded_file"]').val());