返回值数组的Javascript函数
Javascript function that return an array of values
这个函数从表中读取当前选择的值,我不能在这个函数之外的单个数组中获得它们的列表。
function getcheckboxed() {
vartoberead = [];
$("input:checkbox[name=test]:checked").each(function(){
vartoberead [vartoberead .length] = $(this).val();
console.log($(this).val(), vartoberead);
return vartoberead;
});
我已经在函数内部和外部声明了 vartoberread ,尝试使用:
var myoutsidevar = getcheckboxed();
但总是返回
(未定义)
感谢大家的帮助
你可以把它缩短一点:
var values = $("input:checkbox[name=test]:checked").map(function() {
return this.value;
}).get();
编辑:使此为函数并返回:
function getcheckboxed() {
return $("input:checkbox[name=test]:checked").map(function() {
return this.value;
}).get();
}
可以使用map:
var vartoberead = $("input:checkbox[name=test]:checked").map(function(){
return $(this).val();
});
map()
实际上返回一些东西,所以你不需要推送到一个数组,而是让jQuery用返回的值为你填充数组。
你应该在each()
循环之后return
(而不是在你所做的循环内)无论如何你也可以使用serializeArray
function getcheckboxed() {
return $("input:checkbox[name=test]:checked").serializeArray();
};
当你打印de each里面的值时(console.log($(this).val(), vartoberead);)
另一件事是,你返回的是each中的值。
Try this:
function getcheckboxed() {
vartoberead = [];
$("input:checkbox[name=test]:checked").each(function(){
vartoberead.push($(this).val());
});
return vartoberead;
}
我有一个纯javascript解决方案。我使用html数组,即所有的复选框具有相同的名称(例如test[])
function getCheckBoxesValues()
{
var values=[];
for(var i=0;i<document.getElementsByName('test[]').length;i++)
{
if((document.getElementsByName('test[]')[i]).checked)
{
values.push((document.getElementsByName('test[]')[i]).value);
}
}
return values;
}
<input type="checkbox" name="test[]" value="c1"/>
<input type="checkbox" name="test[]" value="c2"/>
<input type="checkbox" name="test[]" value="c3"/>
<input type="checkbox" name="test[]" value="c4"/>
<input type="checkbox" name="test[]" value="c5"/>
<button onClick="alert(getCheckBoxesValues());">Result</button>
您必须将代码修改为有效的JavaScript代码。那就是:vartoberead [vartoberead .length]
应为vartoberead[vartoberead.length]
,不带空格。除了这个问题,你的代码其他一切都没问题。
仅通过查看您的代码,我宁愿使用vartoberead.push($(this).val())
添加到返回的数组中,而不是查看数组长度。
相关文章:
- 从函数JavaScript返回不可变数组/对象
- 将对象传递给函数.JavaScript
- 如何定义const函数javascript(语法糖)
- 新的日期函数javascript
- TypeError:this.getAttribute不是一个函数-javascript
- 从函数javascript发送变量
- 扩展自容器函数Javascript
- 从内部函数javascript内部分配外部函数的对象
- 使用函数JavaScript中的函数
- 在这里使用回调函数(JavaScript)有什么好处吗
- 来自函数 Javascript 的 NaN 返回值 ||函数执行顺序
- 将“e”传递给一个新函数 - javascript
- 调用函数中的一个函数——Javascript
- 传递的变量不适用于我的函数-Javascript
- 如何将类方法设置为等于多个函数?-Javascript
- 显示php中的函数javascript
- 如何使用php代码创建函数Javascript弹出框
- 未调用的外部函数-javascript
- 如何在类中运行函数.Javascript
- 关闭mouseover上的一个函数——Javascript,jQuery