-2

我在下面启动我的 javascript 时收到此错误:

if(isPartOfIndex(new Array[25,20], indexClaimTypeRow)    ){
        //display size

         listItem = '<li id="soze" data-theme="c"><h3>Size:</h3>' +
        '<div data-role="fieldcontain" data-theme="c">' +
          '<fieldset data-role="controlgroup" data-type="horizontal" id="recieptVat">' +
           '<input type="radio" name="radio-choice-1" id="radio-choice-1" value="1.0" />' +
            '<label for="radio-choice-1">1.0</label>' +
            '<input type="radio" name="radio-choice-1" id="radio-choice-2" value="1.4"  />' +
            '<label for="radio-choice-2">1.4</label>' +
            '<input type="radio" name="radio-choice-1" id="radio-choice-3" value="2.0"  />' +
            '<label for="radio-choice-3">2.0</label>' +
          '</fieldset>' +
        '</div>' +
      '</li>';

      $('#itemFieldslist').append(listItem);

      $('#itemFieldslist').listview('refresh');
    }

显示的错误信息是:

TypeError:“未定义”不是构造函数(正在评估“新数组 [25,20]”)

这是 isPartOfindex ,它需要一个数组作为第一个参数

function isPartOfIndex(indexRow, indexType){

    for(var i = 0; i < indexRow.length; i++){
        if(indexRow[i] == indexType){
            return true;
        }
    }

    return false;

}

我究竟做错了什么?

谢谢

4

3 回答 3

4

应该是new Array(25, 20)或只是[25, 20]

于 2013-07-15T17:04:40.223 回答
1

您需要将代码更改为:

   if(isPartOfIndex(new Array(25,20), indexClaimTypeRow)    ){
    //display size

     listItem = '<li id="soze" data-theme="c"><h3>Size:</h3>' +
    '<div data-role="fieldcontain" data-theme="c">' +
      '<fieldset data-role="controlgroup" data-type="horizontal" id="recieptVat">' +
       '<input type="radio" name="radio-choice-1" id="radio-choice-1" value="1.0" />' +
        '<label for="radio-choice-1">1.0</label>' +
        '<input type="radio" name="radio-choice-1" id="radio-choice-2" value="1.4"  />' +
        '<label for="radio-choice-2">1.4</label>' +
        '<input type="radio" name="radio-choice-1" id="radio-choice-3" value="2.0"  />' +
        '<label for="radio-choice-3">2.0</label>' +
      '</fieldset>' +
    '</div>' +
  '</li>';

  $('#itemFieldslist').append(listItem);

  $('#itemFieldslist').listview('refresh');
}

new Array[25,20] 不是您的数组的正确声明。

于 2013-07-15T17:06:22.043 回答
1

只需要[20, 25]而不是new Array[20, 25]. 你也可以使用new Array(20, 25)

于 2013-07-15T17:10:12.007 回答