我目前正在尝试编写一个函数,通过勾选复选框动态地将唯一ID应用于列表项,但是我遇到了一个问题,当将唯一ID附加到列表项时,我在控制台中收到以下错误消息: / p>
Uncaught TypeError: Object SpTU 4, 183:false<br /> has no method 'append'
以下是导致错误的代码:
strng += name+":"+val+"<br />";
var i = 1;
strng.append($({ type: "text", id:+i }));
我很快就需要帮助,所以任何帮助都将非常感谢! 提前致谢
------- EDIT ---------- 这是整个函数,所以它更容易理解,我是编程的新手,可能会非常混乱和无关紧要。
var dataToShow = {};
function check(tickbox){
dataToShow[tickbox.value] = tickbox.checked == true;
showDataOnScreen(dataToShow);
function showDataOnScreen(dataToShow){
var $strng = "";
jQuery.each(dataToShow,function(name,val){
$strng += name+":"+val+"<br />";
var i = 1;
$strng.append($({ type: "text", id:+i }));
});
jQuery("#list").html(strng);
答案 0 :(得分:0)
假设您正在使用JQUERY
,请确保string是JQUERY对象答案 1 :(得分:0)
如果您正在尝试构建一个已检查项目列表,我会这样做。
// create an array to store the checked items
var checkedItems = new Array();
// loop through the checked check boxes contained in the list element
// and add them to the array
$("#list :checked").each(function (){
var item = { name: $(this).attr("name"), value: $(this).val() };
checkedItems.push(item);
});
或者,更好的是,如果您计划在不同的元素中显示结果,则可以删除数组。
// loop through the checked check boxes contained in the list element
// and add them to a different element
$("#list :checked").each(function (){
var item = "<div>"+ $(this).attr("name") + ": " + $(this).val() + "</div>";
$("#selectedList").append(item);
});
Here's a working example关于jsFiddle。
参考文献: