如何在javascript中使用id获取文本框的值

时间:2014-02-13 09:21:41

标签: javascript jquery

我想根据id和name获取输入框的值。

因为我的id是逗号它不接受。当我删除逗号和其中一个id时,它显示完美。

但是,我只会将ID设为“Text,Demo_1”。如何根据此ID获取值?

这是代码

HTML

<div id="Text,Demo_1" class="span12">
<label>Notes or Concerns</label>
<div class="control-group">
<input type="text" value="hi" name="view1" class="recommend">
<input type="text" value="hi2" name="view1" class="recommend">
<input type="text" value="hi3" name="view1" class="recommend">
</div>
</div>

Js part

$(function() {
        var values = $('#Text,Demo_1 input[name="view1"]').map(function() {
         return this.value;
 }).get();
alert(values);
});

5 个答案:

答案 0 :(得分:1)

按名称获取价值:

$("[name='view1']").val()

按ID获取价值:

$("#[textbox_ID]").val()

获取数组中的所有文本值

var inputTypes = [];

$('.control-group input[name="view1"]').each(function(){
     inputTypes.push($(this).val());
});

答案 1 :(得分:0)

使用数组

$(function () {
    var values = [];
    $('#TextDemo_1 input[name="view1"]').each(function () {
        values.push($(this).val());
    });
    console.dir(values);
});

答案 2 :(得分:0)

您应该使用\\

转义逗号
var values = $('#Text\\,Demo_1 input[name="view1"]').map(function () {
    return this.value;
}).get();

演示:http://jsfiddle.net/M8Jmz/

但是虽然它有效,但您应该考虑将id更改为正确的标识符。

答案 3 :(得分:-1)

var values = $('input[name="view1"]').val();

答案 4 :(得分:-1)

使用jQuery selectors匹配ID的开头和结尾:

var values = $("div[id^='Text'][id$='Demo_1'] input[name='view1']").map(function() {
...

修改:说明。

[id^='Text'] => Every element which id starts with "Text"
[id$='Demo_1'] => Every element which id ends with "Demo_1"

将它们放在一起将选择符合这两个规则的每个元素。