Відповіді:
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'.
Кращим способом може бути використання цього "цього", він бере будь-яке ім'я "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');
за допомогою id отримати ім'я введення
$('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'));
});
Передайте класу тегу введення та отримайте доступ до значення імені за допомогою класу.
<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)
Це добре працює.