单击ID为“#123”的按钮时出现此错误-我不知道这是什么原因。

我的PHP文件中的代码:

$("#123").click(function(){
    getCheckedValues('oberpunkte', 'input:checkbox[class=oberpunkte]:checked', 'input[type=textfield]');
    getCheckedValues('unterpunkte', 'input:checkbox[class=unterpunkte]:checked', 'input[type=textfield]');
    ajaxCheckedValues('POST', 'selected.php', '#sumadd');
});


上面代码的我的JS函数:

function getCheckedValues(arrayname, selector, nextselector){
    var array = arrayname;
    array = new Array();
    $(selector).each(function(){
        array.push($(this).next(nextselector).val());
    });
}

function ajaxCheckedValues(type, url, div){

    var kategorie = ($("input:radio:checked[name='kategorie']").attr('class'));

    $.ajax({
        type: type,
        url: url,
        data: { oberpunkte : oberpunkte, unterpunkte : unterpunkte, kategorie : kategorie },
        success: function (data)
                               {
                                console.log(data);
                                $(div).html(data);
                               }
          });
 }


Firebug错误:



我还提醒“ kategorie”-它不是null。有任何想法吗?

Button和DIV的HTML / PHP:

echo("<input type='button' name='test' id='123' value='Checklist speichern'/>");

echo("<div id='sumadd' value=''></div>");


编辑说明:添加了HTML / PHP

最佳答案

我猜这个问题是因为您在ajax调用中对oberpunkte和unterpunkte变得不确定。尝试这个

$("#Button123").click(function(){
  var  oberpunkte=[], unterpunkte=[];
 getCheckedValues(oberpunkte, 'input:checkbox[class=oberpunkte]:checked', 'input[type=textfield]');
    getCheckedValues(unterpunkte, 'input:checkbox[class=unterpunkte]:checked', 'input[type=textfield]');
    ajaxCheckedValues('POST', 'selected.php', '#sumadd',oberpunkte,unterpunkte);
});


function getCheckedValues(array, selector, nextselector){
    $(selector).each(function(){
        array.push($(this).next(nextselector).val());
    });
}


function ajaxCheckedValues(type, url, div,oberpunkte,unterpunkte){

    var kategorie = ($("input:radio:checked[name='kategorie']").attr('class'));

    $.ajax({
        type: type,
        url: url,
        data: { oberpunkte : oberpunkte, unterpunkte : unterpunkte, kategorie : kategorie },
        success: function (data)
                               {
                                console.log(data);
                                $(div).html(data);
                               }
          });
 }


同时更改输入字段的ID。 ID必须以字母开头。
校验
What are valid values for the id attribute in HTML?

09-17 08:26