Используя $getJSON JQuery, Как я динамично создаю данные для [данные] параметр после параметрического усилителя URL?

У меня нет проблем, заставляя Json работать и проанализировать возврат json. Я просто задавался вопросом, как я мог создать динамическое "независимо от того, что данные", и засуньте их в [данные], чтобы передать мои параметры оттуда и не вручную добавить их к URL.

От примера веб-сайта jQuery:

$.getJSON("test.js", { name: "John", time: "2pm" }, function(json){
     alert("JSON Data: " + json.users[3].name);
});

Я думал, что мог создать строку (который не имеет смысла так или иначе), и отбросьте его в {}, но я, очевидно, не понимаю ту часть.

имя: разве строка и Вы не, не может поместить переменную в ту часть, поэтому как я динамично поместил бы объекты в любой [данные].

ОБНОВЛЕНИЕ: Спасибо за ответы. Я смог бы удалить название параметра из объекта, если бы я не нашел допустимое значение позже, или я должен был бы уничтожить его и воссоздать его? Я использую некоторые избранные поля для выбора вещей, и мне нельзя было выбрать что-то, таким образом, я не хотел бы передавать то название параметра / значение.

5
задан Breadtruck 14 March 2010 в 12:35
поделиться

4 ответа

Вы можете построить свой объект следующим образом:

var someVar = someRandomString();
$.getJSON('test.js', (function() {
  var theData = {};
  theData[someVar] = someRandomValue();
  return theData;
})(), function(jsonStuffFromServer) {
  alert("JSON Data: " + jsonStuffFromServer.users[3].name);
});

Конечно, вам не нужно создавать объект «данные» прямо здесь, в анонимной функции; вы можете сделать это заранее отдельно:

var theData = {};
theData[someVariableWithANameInIt] = someRandomValue();
$.getJSON(url, theData, function(jsonStuff) { ... });

Вот как вы можете создать такой объект из набора