gpt4 book ai didi

php - 当被告知预选更多复选框时,JavaScript 函数仅选择第一个复选框

转载 作者:行者123 更新时间:2023-12-02 20:20:46 25 4
gpt4 key购买 nike

我有一个 JavaScript 函数,当选择选择框中的某个值时,它可以动态创建复选框元素。为了验证复选框是否被选中,我从 PHP 发送了一个变量。

例如:var_id=1,2,3,5。我使用 jQuery.inArray,但我只选中了从五个列表中选中的第一个复选框。

这是创建复选框列表的函数:

function outcheckboxes(_id, _text, var_id) {
(function($){
var topicContainer = jQuery('#classificationss_id');

topicContainer.append(
$('<li />')
.addClass('checkboxclassid')
.append(
$('<input />', {
id: 'classid' + _id,
name: 'classid[]',
value: _id,
type: 'checkbox',
checked: !$.inArray(_id, var_id)
})
)
.append(
$('<label />', {
'for': 'classid' + _id
}).text( _text)
)
)
})(jQuery)
}

我从另一个函数调用函数outcheckboxes:

function Classifications(obj_parent, obj_this, obj_child, var_id) {

var catalog_id = jQuery("#"+obj_parent).selectedValues()[0];
jQuery("#classificationss_id").children().remove();
jQuery("#"+obj_this).children().remove();
jQuery("#"+obj_child).children().remove();


if(catalog_id>0){
jQuery.ajax({
type : "GET",
url : "../index.php",
data : "option=com_namecat&view=lists&format=raw&list=classifications&id=" + catalog_id,
dataType : "xml",
success : function(xml) {
var _id = "";
var _text = "";

jQuery(xml).find("row").each( function() {
_id = jQuery(this).find("id").text();
_text = jQuery(this).find("text").text();
jQuery("#"+obj_this).addOption(_id, _text );

outcheckboxes(_id,_text,var_id);

});
}
});
}
}

我哪里出错了?

最佳答案

首先,您应该像这样编写代码:

编辑:

添加简写

(function($) {
$('<li />')
.addClass('checkboxclassid')
.append(
$('<input />', {
id: 'classid' + _id,
name: 'classtype[]',
value: _id,
type: 'checkbox',
checked: !$.inArray(_id, var_id)
})
)
.append(
$('<label />', {
'for': 'classid' + _id
}).text( _text)
)
})(jQuery)

关于php - 当被告知预选更多复选框时,JavaScript 函数仅选择第一个复选框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5604865/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com