2010-09-11 2 views
1

У меня проблема с почтой jquery.JQuery - сообщение с переменной

мои вары

var checki = '1'; 
var my_var = 't95'; 

это работает отлично

var data = { 'mo': 'usr', 'dt': 'update_uis', 'values[0][t95]': checki']}; 

но когда, когда я вставить вар, он не будет работать

var data = { 'mo': 'usr', 'dt': 'update_uis', 'values[0]['+my_var+']': checki']}; // dont work 



$.ajax({ type:   'post', 
      cache:   false, 
      url:   'tsal.php', 
      data:   data, 
      dataType: 'json', 
      success:  function (data) 
      { 
       // blub 
      } 
}); 

Моя проблема в том, что я не получаю сообщение об ошибке. Надеюсь, кто-то может мне помочь.

Заранее благодарен! Peter

+0

В консоли JavaScript (Firebug) это не говорит о том, что возвращение JSON является недействительным? Ваш пример - нет. – jerone

+0

В консоли JavaScript (Firebug) он не говорит, что возвращаемый JSON недействителен? <- Правильно! – Peter

ответ

1

Вам нужно добавить переменную динамически, например:

var checki = '1'; 
var my_var = 't95'; 
var data = { 'mo': 'usr', 'dt': 'update_uis' }; 
data['values[0]['+my_var+']'] = checki; 
$.ajax({  
    type:   'post', 
    cache:   false, 
    url:   'tsal.php', 
    data:   data, 
    dataType: 'json', 
    success:  function (data) { 
    // blub 
    } 
}); 
+0

Привет, ник! Большое спасибо ! (как всегда) :) – Peter

+1

Причина, по которой вы должны это сделать, заключается в том, что в JavaScript, в отличие от языков, таких как Python, бит слева от ':' в литерале объекта не является общим выражением. Это может быть только одна строка с кавычками или некорректная строка без ключевого слова. – bobince

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