具有相同名称的多个文本框

时间:2014-07-05 11:37:32

标签: jquery grails gsp

我有多个动态创建的文本框,这些文本框的名称与id不同。我需要通过ajax获取所有这些文本框的值,但没有任何线索,请建议我如何实现这一点。

修改

我曾尝试过

$('#addMultipleEducationLevel').on('click', function () {
    $.ajax({
        url: "${createLink(controller: 'someController', action: 'someAction')}",
        data: {degreeId:$( "#degree" ).val(),fieldOfStudy:$('[name=fieldsOfStudy]').serialize()}
    });
})

但我得到了

 [fieldOfStudy:fieldsOfStudy=&fieldsOfStudy=Biblical+Hebrew&fieldsOfStudy=Applied+Business+(Double+Award), degreeId:3, action:someAction, controller:somecontroller]

4 个答案:

答案 0 :(得分:1)

您只需使用属性选择器和serialize()来收集要发送的数据:

var ajaxData= $('[name=name]').serialize();

$.post('/path/to/server', ajaxData, function(response){
   /* do something with response */
});

DEMO

答案 1 :(得分:1)

嗨@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!!");
});

Live demo

答案 2 :(得分:0)

试试这种方式

脚本

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

DEMO

答案 3 :(得分:0)

要获取文本框值,请根据它们具有不同ID的事实尝试以下jQuery代码段:

$("#ID OF YOUR CHECKBOX").val();

然后,如果您想通过AJAX发送这些值,请使用以下代码段:

$.ajax({
    url: "receiver.php?value="+your_value_here+"&value2="+anpther_value_here,
}).done(function() {
    alert("data sent");
});