我有一个问题,我的代码中有X <input type="checkbox" />
,现在我想将这个对象/数组预先输出。 - 查看我的代码。
$("#denied_seekrs").click(function()
{
if (!isCheckedById("selectname"))
{
alert ("Please select at least one event");
return false;
}
else
{
alert( $("input[@id=selectname]:checked").val() ); //submit the form
}
});
function isCheckedById(id)
{
var checked = $("input[@id="+id+"]:checked").length;
if (checked == 0)
{
return false;
}
else
{
return true;
}
}
当我在警报中输出它时,我会得到一个对象,但是如果我选择了2复选框,那么这2个复选框中的值是什么。
我希望我能提供帮助,所有人都理解我:)
答案 0 :(得分:26)
怎么样
$("#denied_seekrs").click(function() {
var checkedInputs = $("input:checked");
var test = "";
$.each(checkedInputs, function(i, val) {
test += val.value+",";
});
test = test.substring(0,(test.length-1));
alert(test);
});
答案 1 :(得分:3)
我不确定你在寻找什么,但我猜测jQuery.each() method会有所帮助。您可以使用它来迭代数组,对象等。
var arr = [ "one", "two", "three", "four", "five" ];
jQuery.each(arr, function() {
$("#" + this).text("My id is " + this + ".");
return (this != "four"); // will stop running to skip "five"
});
答案 2 :(得分:2)
这样的事情怎么样:
jQuery.each(checked, function() {
$(checked + this).text("My id is " + this + ".");
});
答案 3 :(得分:2)
可能是 - 最终 - 您正在寻找$.serializeArray()
或$.serialize()
?
如果没有,那么这可能对你有帮助:
$("#denied_seekrs").click(function()
{
if (!isCheckedById("selectname"))
{
alert ("Please select at least one event");
return false;
}
else
{
// prepare array of values
var values = [];
// prepare list of checked checkboxes
var $checkboxes = $("input[@id=selectname]:checked");
// push each individual value into the array
$checkboxes.each(function() { values.push( $(this).val() ); });
// debug output
alert( values.join("\n") );
//submit the form
}
});
答案 4 :(得分:0)
当我找到你的时候,你希望用户选择一个复选框(或者是一个或多个?)。这应该这样做:
$("#denied_seekrs").click(function()
{
var $checkedInputs = $("input:checked");
if ($checkedInputs.length != 1)
{
alert ("Please select one event");
return false;
}
alert( $checkedInputs.val() ); //submit the form
});
修改强> 在再次阅读您的问题后,我意识到上述代码没有回答您的问题。但是,上述方法确实有效,并且是您解决方案的更短版本。也许你想用它代替。要回答您的问题,您可以提醒所有复选框的值,如下所示:
改变这个:
alert( $checkedInputs.val() ); //submit the form
到此:
var values = "";
$checkedInputs.each(function(){
values += $(this).val() + " ";
});
alert( values );