0

I know this question has been asked before, but I tried to apply the answers with no results.

I'm trying to do multiple requests on the same domain with a for loop but it's working for the entire record of my array.

Here is the code I use:

function showDesc(str) {
    var prod = document.getElementsByName("prod_item[]");
    var xhr = [], i;
    for (i = 0; i < prod.length; i++) {
        var txtHint = 'txtHint10' + i;  
        (function(i) {
            var xhr = new XMLHttpRequest();
            var url = "getDesc.php?q=" + str;

            xhr.onreadystatechange = function () {
                if (xhr.readyState == 4 && xhr.status == 200) {
                    document.getElementById(txtHint).innerHTML = xhr.responseText;
                }
            };
            xhr.open("GET", url, false);
            xhr.send();
        })(i);
    }
}

PHP

<select name="prod_item[]" id="prod_item.1" onchange="showDesc(this.options[this.selectedIndex].value)"></select>
<div id="txtHint100"></div>

and then I will use dynamic table for the prod_item field and div_id.

Is there any mistake in my code?

pushkin
  • 9,575
  • 15
  • 51
  • 95

0 Answers0