it-swarm.com.de

So legen Sie den Wert des eingegebenen Texts mit jQuery fest

Ich habe folgenden Eingabetext:

<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>

Welche produzieren folgende 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>

Ich möchte den Wert dieses Eingabetextes mit jquery setzen, also habe ich das gemacht:

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

es funktioniert jedoch nicht ... was ist der Fehler in meiner Syntax?

332
raberana

Ihr Selektor ruft das umgebende <div class='textBoxEmployeeNumber'> des Textfelds statt der Eingabe darin ab.

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

Aktualisieren Sie nach dem Anzeigen von Ausgabe-HTML

Wenn der ASP.NET-Code den HTML-Code <input> mit dem ID-Attribut id='EmployeeId' zuverlässig ausgibt, können Sie einfach Folgendes verwenden:

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

Andernfalls müssen Sie in der Fehlerkonsole Ihres Browsers überprüfen, dass keine anderen Skriptfehler vorliegen, die dazu führen, dass dies fehlschlägt. Das erste Beispiel oben funktioniert in dieser Demonstration korrekt.

506

Mit jQuery können wir den folgenden Code verwenden:

Nach Eingabenamen auswählen:

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

Auswahl nach Eingabeklasse:

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

Nach Eingabe-ID auswählen:

$('#textboxid').val('some value')
58
Aditya P Bhatt
$(document).ready(function () {
    $('#EmployeeId').val("fgg");

    //Or
    $('.textBoxEmployeeNumber > input').val("fgg");

    //Or
    $('.textBoxEmployeeNumber').find('input').val("fgg");
});
12
Thulasiram

Für Element mit ID

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

Sie können den Wert als einstellen

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

Dokumentation hier .

4
Aniket Thakur

dies ist für den Unterricht

$('.nameofdiv').val('we are developers');

für Ausweise

$('#nameofdiv').val('we are developers');

jetzt, wenn Sie ein iput in einer Form haben, können Sie verwenden

$("#form li.name input.name_val").val('we are awsome developers');
2
user4920718

In reinen js wird es einfacher sein

EmployeeId.value = 'fgg';
EmployeeId.value = 'fgg';
<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>
0

Hier ist eine weitere Variante für einen Datei-Upload, bei der die Schaltfläche bootstrap besser aussieht als die Standardschaltfläche zum Durchsuchen des Datei-Uploads. Dies ist das 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>

Hier ist das Skript:

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