Ответ 1
Вы должны использовать value attribute
, чтобы получить его значение
<input type="text" name="FirstName" value="First Name" />
попробуйте -
var text = $('#DynamicValueAssignedHere').find('input[name="FirstName"]').val();
Я использую шаблон jquery для динамического создания нескольких элементов на одной странице. Каждый элемент выглядит следующим образом:
<div id ="DynamicValueAssignedHere">
<div class="something">Hello world</div>
<div class="formdiv">
<form name="inpForm">
<input type="text" name="FirstName" />
<input type="submit" value="Submit" />
</form>
</div>
</div>
Я хотел бы использовать JQuery для обработки формы на submit. Я также хотел бы вернуть значения формы к их предыдущим значениям, если что-то пойдет не так. Мой вопрос: Как я могу получить значение поля ввода с помощью JQuery? Например, я могу получить значение div с классом "something", выполнив
var something = $(#DynamicValueAssignedHere).children(".something").html();
Аналогичным образом я хочу получить значение текстового поля. Прямо сейчас, я попробовал
var text = $(#DynamicValueAssignedHere).children(".formdiv").findnext('input[name="FirstName"]').val();
но он, похоже, не работает
Вы должны использовать value attribute
, чтобы получить его значение
<input type="text" name="FirstName" value="First Name" />
попробуйте -
var text = $('#DynamicValueAssignedHere').find('input[name="FirstName"]').val();
Это может быть намного проще, чем то, что вы делаете.
HTML:
<input id="myField" type="text" name="email"/>
JavaScript:
// getting the value
var email = $("#myField").val();
// setting the value
$("#myField").val( "new value here" );
Альтернативный подход без поиска поля html:
var $form = $('#' + DynamicValueAssignedHere).find('form');
var formData = $form.serializeArray();
var myFieldName = 'FirstName';
var myFieldFilter = function (field) {
return field.name == myFieldName;
}
var value = formData.filter(myFieldFilter)[0].value;
если вы знаете идентификатор входов, которые вам нужно использовать только:
var value = $("#inputID").val();
var textValue = $("input[type=text]").val()
это получит все значения всех текстовых полей. Вы можете использовать методы, такие как дети, firstchild и т.д., Чтобы оттолкнуть. $ ('form [name = form1] input [type = text]') Легче использовать идентификаторы для элементов таргетинга, но если они чисто динамические, вы можете получить все входные значения, а затем выполнить цикл через JS.
$("form").submit(function(event) {
var firstfield_value = event.currentTarget[0].value;
var secondfield_value = event.currentTarget[1].value;
alert(firstfield_value);
alert(secondfield_value);
event.preventDefault();
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<form action="" method="post" >
<input type="text" name="field1" value="value1">
<input type="text" name="field2" value="value2">
</form>
// for getting the value from input type text
var value = $("input[type=text]").val();
// for getting the value from by input type name
var textValue = $("input[name=text]").val()
Как получить одобренный профиль Upwork (даже если вы были отклонены 10 раз).
Как получить одобрение вашего профиля на Upwork, даже если они говорят, что ваш навык не нужен.
Напишите мне, чтобы получить одобрение на ваш #upwork аккаунт !!!!
Вы можете попробовать эти строки:
$("#DynamicValueAssignedHere .formdiv form").contents().find("input[name='FirstName']").prevObject[1].value
Вы можете получить любое значение поля ввода с помощью $('input[fieldAttribute=value]').val()
вот пример
displayValue = () => {
// you can get the value by name attribute like this
console.log('value of firstname : ' + $('input[name=firstName]').val());
// if there is the id as lastname
console.log('value of lastname by id : ' + $('#lastName').val());
// get value of carType from placeholder
console.log('value of carType from placeholder ' + $('input[placeholder=carType]').val());
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div class="formdiv">
<form name="inpForm">
<input type="text" name="firstName" placeholder='first name'/>
<input type="text" name="lastName" id='lastName' placeholder='last name'/>
<input type="text" placeholder="carType" />
<input type="button" value="display value" onclick='displayValue()'/>
</form>
</div>