#jquery #grails #gsp
#jquery #grails #gsp
Вопрос:
У меня есть несколько текстовых полей, которые создаются динамически, эти текстовые поля имеют одинаковые имена и разные идентификаторы. Мне нужно получить значения всех этих текстовых полей через ajax, но я не имел ни малейшего представления, пожалуйста, подскажите, как я могу этого добиться.
Редактировать
Я пытался
$('#addMultipleEducationLevel').on('click', function () {
$.ajax({
url: "${createLink(controller: 'someController', action: 'someAction')}",
data: {degreeId:$( "#degree" ).val(),fieldOfStudy:$('[name=fieldsOfStudy]').serialize()}
});
})
Но я получаю
[fieldOfStudy:fieldsOfStudy=amp;fieldsOfStudy=Biblical Hebrewamp;fieldsOfStudy=Applied Business (Double Award), degreeId:3, action:someAction, controller:somecontroller]
Комментарии:
1. Можете ли вы показать нам свой код?
Ответ №1:
Вы можете просто использовать селектор атрибутов и serialize()
собирать данные для отправки:
var ajaxData= $('[name=name]').serialize();
$.post('/path/to/server', ajaxData, function(response){
/* do something with response */
});
Комментарии:
1. проверить это для чего? Вам нужно быть более конкретным в деталях вашей проблемы относительно того, каковы ваши ожидания. Вот почему вы получаете множество голосов «против»
Ответ №2:
привет @Abdullah, используя этот способ, ты получаешь всю ценность.
если у вас есть несколько текстовых полей с одинаковым именем, например
<input type="text" name="a1" value="a">
<input type="text" name="a1" value="b">
<input type="text" name="a1" value="c">
<input type="text" name="a1" value="d">
код jquery:
var a="";
$("input:text").each(function () {
if (this.value != undefined) {
a = this.value ',';
}
});
alert(a);
а теперь отправьте свое значение с помощью ajax
$.ajax({
url: "send.aspx?value=" a,
type: "get"
}).done(function () {
alert("Send successfully!!");
});
Ответ №3:
Попробуйте этот способ
Скрипт является
$(document).ready(function () {
$('#ex input:text').each(function(){
alert(this.value)
});
});
Пример HTML
<div id="ex">
<input type="text" id="one" name="first" value="10">
<input type="text" id="two" name="first" value="11">
<input type="text" id="three" name="first" value="12">
</div>
Ответ №4:
Чтобы получить значение текстового поля, в соответствии с тем фактом, что они имеют разные идентификаторы, попробуйте следующий фрагмент jQuery:
$("#ID OF YOUR CHECKBOX").val();
Затем, если вы хотите отправить эти значения через AJAX, используйте этот фрагмент:
$.ajax({
url: "receiver.php?value=" your_value_here "amp;value2=" anpther_value_here,
}).done(function() {
alert("data sent");
});
Комментарии:
1. Идентификаторы создаются динамически
2. Затем просмотрите их все с помощью $(«input[type =checkbox]»).each()