Установка значения «Нет» вместо требуемых данных

#javascript #python #html #django #ajax

#javascript #питон #HTML #джанго #аякс

Вопрос:

Я хочу установить значение поля на основе значения другого поля (с помощью AJAX). Здесь я пытаюсь установить то же значение, но вместо фактического значения ему присваивается значение «Нет».

скрипт для отправки запроса :

 <script>
  function getCustomerName() {
    var x = document.ipwhitelistindex.AWSID.value;
    console.log(x)
    var xhttp = new XMLHttpRequest();
    xhttp.onreadystatechange = function() {
      if (this.readyState == 4 amp;amp; this.status == 200) {
        document.ipwhitelistindex.CUSTNAME.value = this.responseText;
      }
    };
    xhttp.open('POST', 'getcustomernamefromexcel', true);
    xhttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
    xhttp.send(x);
  }
</script>
 

Вот, я посылаю x. Я вижу точное значение в консоли, но на странице оно равно None.

питон :

  def getcustomernamefromexcel(request):
    value = request.POST.get('x')
    return HttpResponse(value)
 

Ответ №1:

Если вы вызываете xhttp.send(x) , то имя переменной больше не известно. Вам нужно закодировать это, например, с помощью:

 xhttp.send("x=" encodeURIComponent(x)); 

Комментарии:

1. Спасибо, @Willem Van Onsem. все работает так, как и ожидалось.