Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/86.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用JQUERY Val();作为多元吸气剂_Jquery_Html - Fatal编程技术网

使用JQUERY Val();作为多元吸气剂

使用JQUERY Val();作为多元吸气剂,jquery,html,Jquery,Html,我正在使用JQUERY Val();要将数据从我的amCharts period selector获取到我页面上的div,它可以工作,但只带来一个值,.amChartsInputField有两个包含文本的输入区域 我在JQUERY文档中注意到Val();简单使用只会引入一个元素。有没有一种方法可以让它加入多个对象 我的脚本如下: JQUERY chart1.addListener("rendered",function(e) { e.chart.periodSelector.addListen

我正在使用JQUERY Val();要将数据从我的amCharts period selector获取到我页面上的div,它可以工作,但只带来一个值,.amChartsInputField有两个包含文本的输入区域

我在JQUERY文档中注意到Val();简单使用只会引入一个元素。有没有一种方法可以让它加入多个对象

我的脚本如下:

JQUERY

chart1.addListener("rendered",function(e) {
 e.chart.periodSelector.addListener("changed",function() {

var date = $(".amChartsPeriodSelector .amChartsInputField").val();
    $("#date-div p").text( date );
HTML

信息提取


非常感谢您的帮助。

您可以使用
map
get

var date = $(".amChartsPeriodSelector .amChartsInputField").map(function(){
   return this.value; // simple but you could also use $(this).val();
}).get(); // now date is an array

如果您想要concat,您可以像
$(“#date div p”).text(date.join(“”)那样执行或使用索引。

您可以使用jQuery函数将所有值收集到一个数组中:

//对于每个匹配,“映射”值到数组中
变量日期=$(“.amChartsPeriodSelector.amChartsInputField”).map(函数(){
返回$(this.val();
}).get();
//将这些值连接在一起并指定给date div
$(“#date div p”).text(dates.join(',')


日期变量只更新一次(使用第一个元素的val()),这意味着这样做不会得到数组。如果您想为每个单独的值做一些事情,那么您可以这样做

var elements = $('.elements');
var value;
for(var i=0; i<elements.length; i++){
    value = $(elements[i]).val();
    //now do something.. for example:
    alert(value);
}
var-elements=$('.elements');
var值;

对于(var i=0;i我建议您这样做:

var date = [];
$(".amChartsPeriodSelector .amChartsInputField").each(function() {
    date.push($(this).val());
});

如果您有两个具有相同类的输入字段,则必须使用each()方法循环该类并计算结果。您需要以某种方式对匹配的元素进行迭代,依次获取它们各自的值。如果您希望返回逗号分隔的值,则有一个问题(我自己回答)关于如何做到这一点:正如问题中已经提到的,第一句话与实际发生的情况完全相反。jQuery获取者(除非另有明确说明)只会查看第一个匹配的元素。谢谢Cory,非常感谢,我已经学习了一个新的jQuery函数映射();谢谢你,阿米特,谢谢你的回答,还有科里的帮助。@jasonh很高兴能帮助我:)
var date = [];
$(".amChartsPeriodSelector .amChartsInputField").each(function() {
    date.push($(this).val());
});