2015-03-12 4 views
0

Я получаю сообщение об ошибке в выражении if - он не может сделать сравнение («неожиданный indentifier») , но я не могу понять, почему. Я предполагаю, что это связано с тем, что «стол» не строковый объект .. Этот код выполняется внутри кода C, поэтому вы должны Ignor В «\ п» и "знакиКак правильно передавать и сравнивать строки JavaScript

   "function postRow(i,table){\n" 
 

 
       "var desc=document.getElementsByName('description'+table);\n" 
 
       "var inter=document.getElementsByName('logInterval'+table);\n" 
 
       
 
       "if(table.equals('AN') || table.equals('OW')){\n" 
 
        "var mu=document.getElementsByName('mul'+table);\n" 
 
        "var di=document.getElementsByName('div'+table);\n" 
 
        "var off=document.getElementsByName('offset'+table);\n" 
 
       "$.post('',{func:'saveTable'+table,\n" 
 
          "index:i,\n" 
 
          "description:desc[i].value,\n" 
 
          "logInterval:inter[i].value,\n" 
 
          "mul:mu[i].value,\n" 
 
          "div:di[i].value,\n" 
 
          "offset:off[i].value,\n" 
 
         "});" 
 
       "}\n" 
 
       
 
       "else if (table.equals('DG')){\n" 
 
        "var count=document.getElementsByName('counterDG');\n" 
 
        "$.post('',{func:'saveTable'+table,\n" 
 
          "index:i,\n" 
 
          "description:desc[i].value,\n" 
 
          "logInterval:inter[i].value,\n" 
 
          "counter:count[i].value,\n" 
 
         "});\n"     
 
       "}\n" 
 

 
       "setTimeout(updateTable(table),1000);"  
 
       "}\n"

Вызов функции:

onclick=postRow(i,"DG");

+1

Где ошибка? –

+0

Извините, я отредактировал сообщение :-) – bardalas

+1

Почему вы действительно не удаляете все \ n и «просто для нас, чтобы их легко прочитать?» Это затрудняет чтение. Что делает 'tables.equals()' do? – somethinghere

ответ

1

Строки Javascript не имеют метода .equals(). Используйте === оператор:

if (table === 'AN' || table === 'OW') 
+0

Я попробовал это в начале, и это не сработало. Я попробую еще раз – bardalas

+0

Хорошо, это сработало - Спасибо – bardalas

0

Вместо использования table.equals ('AN'), использование таблицы == ('An').

Смежные вопросы