Ответы:
var value_input = $("input[name*='xxxx']").val();
Хотя нельзя отрицать, что jQuery является мощным инструментом, использовать его для такой тривиальной операции, как «получение значения атрибута элемента» - действительно плохая идея.
Судя по принятому в настоящее время ответу, я предполагаю, что вы смогли добавить атрибут ID к своему элементу и использовать его для его выбора.
Имея это в виду, вот два фрагмента кода. Во-первых, код, данный вам в принятом ответе:
$("#ID").attr("name");
И, во-вторых, его версия Vanilla JS :
document.getElementById('ID').getAttribute("name");
Мои результаты:
Вы можете проверить себя здесь . Версия "простого JavaScript" более чем в 35 раз быстрее, чем версия jQuery.
Это всего лишь одна операция, и со временем в вашем коде будет происходить все больше и больше вещей. Возможно, для чего-то особенно продвинутого оптимальное решение «на чистом JavaScript» заняло бы одну секунду. Версия jQuery может занять от 30 секунд до целой минуты! Это огромно! Люди не собираются сидеть сложа руки. Даже браузеру станет скучно, и он предложит вам отключить веб-страницу, если она займет слишком много времени!
Как я уже сказал, jQuery - мощный инструмент, но его не следует рассматривать как ответ на все вопросы .
Вам нужно написать селектор, который <input>сначала выбирает правильный . В идеале вы должны использовать идентификатор элемента $('#element_id'), в противном случае - идентификатор контейнера $('#container_id input')или класса элемента $('input.class_name').
У вашего элемента нет ни одного из них, ни контекста, поэтому сложно сказать вам, как его выбрать.
После того, как вы определились с подходящим селектором, вы должны использовать метод attr для доступа к атрибутам элемента. Чтобы получить имя, вы должны использовать $(selector).attr('name')который вернет (в вашем примере) 'xxxxx'.
Лучше было бы использовать this, он берет любое имя id и использует его. Пока вы добавляете имя класса mytarget.
Всякий раз, когда какое-либо из полей, для которых задана цель, изменяется, будет отображаться окно предупреждения с именем этого поля. Просто вырезайте и пропустите весь сценарий, чтобы он заработал!
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.8.0/jquery.min.js" type="text/javascript"></script>
<script>
$(document).ready(function() {
$('.mytarget').change(function() {
var name1 = $(this).attr("name");
alert(name1);
});
});
</script>
Name: <input type="text" name="myname" id="myname" class="mytarget"><br />
Age: <input type="text" name="myage" id="myage" class="mytarget"><br />
используя значение получить имя входа
$('input[value="1"]').attr('name');
используя идентификатор получить имя входа
$('input[class="id"]').attr('name');
$('#id').attr('name');
используя класс получить имя ввода
$('input[value="classname"]').attr('name');
$('.classname').attr('name'); //if classname have unique value
Если вы имеете дело с одним элементом, желательно использовать idселектор, как указано в ответе GenericTypeTea, и получить имя вроде $("#id").attr("name");.
Но если вы хотите, как я сделал, когда нашел этот вопрос, список со всеми входными именами определенного класса (в моем примере это список с именами всех неотмеченных флажков с .selectable-checkboxклассом), вы можете сделать что-то вроде:
var listOfUnchecked = $('.selectable-checkbox:unchecked').toArray().map(x=>x.name);
или
var listOfUnchecked = [];
$('.selectable-checkbox:unchecked').each(function () {
listOfUnchecked.push($(this).attr('name'));
});
Передайте класс входному тегу и получите доступ к значению имени с помощью class.
<input class="test-class" name='xxxxx' value=1>
<script>
$('.test-class').attr('name');
</script>
Или вы также можете получить доступ к значению, используя id.
<input id="test-id" name='xxxxx' value=1>
<script>
$('#test-id').attr('name');
</script>
В строке ниже изначально возникла проблема с указанием единственного кода, в котором значение currnetRowAppName не занимает пробел со строкой. Итак, после этого, давая единственный код '"+row.applicationName+"', он также занимает место.
Пример:
<button class='btn btn-primary btn-xs appDelete' type='button' currnetRowAppName='"+row.applicationName+"' id="+row.id+ >
var viewAppNAME = $(this).attr("currnetRowAppName");
alert(viewAppNAME)
Это работает нормально.