У мене є вхідний текст, який виглядає наступним чином:
<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'>
замість введення всередині нього.
// Access the input inside the div with this selector:
$(function () {
$('.textBoxEmployeeNumber input').val("fgg");
});
Якщо код ASP.NET надійно виводить HTML <input>
з атрибутом id id='EmployeeId'
, можна простіше просто використовувати:
$(function () {
$('#EmployeeId').val("fgg");
});
Якщо це не спрацює, вам потрібно буде переконатися в консолі помилок вашого браузера, що у вас немає інших помилок скрипта, які спричиняють цю помилку. Перший приклад вище [працює правильно в цій демонстрації.](
)Використовуючи jQuery, ми можемо використовувати наступний код:
Відбір за іменем вводу:
$('input[name="textboxname"]').val('some value')
Вибрати за класом вхідних даних:
$('input[type=text].textboxclass').val('some value')
Вибрати за вхідним ідентифікатором:
$('#textboxid').val('some value')
$(document).ready(function () {
$('#EmployeeId').val("fgg");
//Or
$('.textBoxEmployeeNumber > input').val("fgg");
//Or
$('.textBoxEmployeeNumber').find('input').val("fgg");
});