как заменить значение с помощью JavaScript - PullRequest
0 голосов
/ 04 января 2019

У меня есть следующий код:

var adUnitBids = [
{
    bidder: '',
    params: {
       placementId: 'var'
    }

},

и я хочу заменить строковую переменную новым значением через Javascript или PHP (не в jQuery или AJAX, только в Javascript или PHP).

Я сделал это:

var div = document.querySelector("selector[placementId='var']");

Я не знаю, как продолжить. На самом деле, я не знаю, будет ли работать вышеупомянутый вариант.

Кто-нибудь может мне помочь? Спасибо!

Ответы [ 4 ]

0 голосов
/ 11 января 2019

спасибо, я сделал то, что вы объяснили и работает, но не в той среде, в которой он запущен, поскольку он работает на программной основе, выполняется много фреймов и запросов, что затрудняет его выполнение. Если я вставлю его в mi html напрямую, это сработает. Но внутри iframes из iframes из iframes и множества запросов внутри (как программно работает) ничего не происходит. Все равно спасибо

0 голосов
/ 04 января 2019

Ваша переменная, насколько я могу судить, это просто массив JSON. Вы можете просто сделать что-то вроде:

adUnitBids[0].params.placementId = 'JuicyFruit';

Пример:

var adUnitBids = [
{
    bidder: '',
    params: {
       placementId: 'var'
    }

}]

adUnitBids[0].params.placementId = 'JuicyFruit';

console.log(adUnitBids);

Ваша проблема в том, что вы пытались получить доступ к переменной, как если бы это был элемент html, а не объект json.

0 голосов
/ 04 января 2019

Хорошо, у вас есть массив объектов с неизвестной длиной. Вы можете обновить его с помощью JavaScript или PHP, в зависимости от того, где находится этот массив, в браузере или на сервере. Если этот код находится в браузере, вы можете обновить его с помощью JavaScript.

В javascript массивы имеют позиции / индексы, и вам нужно знать позицию ведьмы, которую нужно обновить.

Если вам нужно обновить определенную позицию в массиве, вы можете получить к ней доступ с помощью индекса.

adUnitBids[0].params.placementId = 'new value';

Обратите внимание, что adUnitBids [0] будет указывать на индекс 0 массива.

Если вам нужно обновить значения массива отверстий, вы можете использовать forEach

adUnitBids.forEach(function(item){
   item.params.placementId = 'new value';
})
0 голосов
/ 04 января 2019

var adUnitBids = [{
  bidder: '',
  params: {
    placementId: 'var'
  }
}];

adUnitBids[0].params.placementId = 'rav';

console.log(adUnitBids);
...