J'ai un texte d'entrée qui est le suivant :
<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>
Ce qui produit le html suivant
<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>
Je veux définir la valeur de ce texte d'entrée en utilisant Jquery, alors j'ai fait ceci :
<script type="text/javascript" language="javascript">
$(function() {
$('.textBoxEmployeeNumber').val("fgg");
});
</script>
Cependant, cela ne fonctionne pas... Quelle est l'erreur dans ma syntaxe ?
Votre sélecteur récupère la zone de texte qui l'entoure, " div class='textBoxEmployeeNumber'>", au lieu de l'entrée qu'elle contient.
// Access the input inside the div with this selector:
$(function () {
$('.textBoxEmployeeNumber input').val("fgg");
});
Si le code ASP.NET produit de manière fiable le HTML <input>
avec un attribut id id='EmployeeId'
, vous pouvez plus simplement utiliser :
$(function () {
$('#EmployeeId').val("fgg");
});
Dans le cas contraire, vous devrez vérifier dans la console d'erreurs de votre navigateur que vous n'avez pas d'autres erreurs de script à l'origine de cet échec. Le premier exemple ci-dessus [fonctionne correctement dans cette démonstration] (
).En utilisant jQuery, nous pouvons utiliser le code suivant :
Sélectionner par le nom de l'entrée :
$('input[name="textboxname"]').val('some value')
Sélectionner par classe d'entrée :
$('input[type=text].textboxclass').val('some value')
Sélectionner par id. d'entrée :
$('#textboxid').val('some value')
$(document).ready(function () {
$('#EmployeeId').val("fgg");
//Or
$('.textBoxEmployeeNumber > input').val("fgg");
//Or
$('.textBoxEmployeeNumber').find('input').val("fgg");
});