-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: 'undefined' はコンストラクターではありません ('new Array[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 に答える