我有一个输入文本是这样的:
<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>
哪些产生以下HTML
<div class="editor-label"> <label for="EmployeeId">Employee Number</label> </div> <div class="editor-field textBoxEmployeeNumber"> <input class="text-box single-line" data-val="true" data-val-number="The field EmployeeId must be a number." data-val-required="The EmployeeId field is required." id="EmployeeId" name="EmployeeId" type="text" value="" /> <span class="field-validation-valid" data-valmsg-for="EmployeeId" data-valmsg-replace="true"></span> </div>
我想使用jquery设置此输入文本的值,所以我做到了:
<script type="text/javascript" language="javascript"> $(function() { $('.textBoxEmployeeNumber').val("fgg"); }); </script>
但是,它不起作用…我的语法有什么错误?
您的选择器正在检索文本框的周围,<div class='textBoxEmployeeNumber'>而不是其内部的输入。
<div class='textBoxEmployeeNumber'>
// Access the input inside the div with this selector: $(function () { $('.textBoxEmployeeNumber input').val("fgg"); });
如果ASP.NET代码可靠地输出<input>具有id属性的HTML id='EmployeeId',则可以更简单地使用:
<input>
id='EmployeeId'
$(function () { $('#EmployeeId').val("fgg"); });
如果失败,则需要在浏览器的错误控制台中确认没有其他脚本错误导致此操作失败。上面的第一个示例在此演示中正常工作。