function complete() { alert('pierwszy');// po wysłaniu ten alert wyskakuje formname='sedndata'; responsediv=document.getElementById('Terminarz'); var day = document.getElementById('day').value; var month = document.getElementById('month').value; var year = document.getElementById('year').value; if (XMLHttpRequestObject) { alert('ifhtpprequest'); XMLHttpRequestObject.open("POST", "result.php"); XMLHttpRequestObject.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded'); XMLHttpRequestObject.onreadystatechange = function () { if (XMLHttpRequestObject.readyState == 1) { alert('drugi');// ten już nie - dopiero kiedy nacisne 2 raz document.getElementById('td1').innerHTML ='<div class="ajaxloader"></div>'; } if (XMLHttpRequestObject.readyState == 4) { updatepage(XMLHttpRequestObject.responseText,responsediv); } XMLHttpRequestObject.send(getquerystring(formname)); } } } function getquerystring(formname) { var form = document.forms[formname]; var qstr = ""; function GetElemValue(name, value) { qstr += (qstr.length > 0 ? "&" : "") + escape(name).replace(/\+/g, "%2B") + "="+ escape(value ? value : "").replace(/\+/g, "%2B"); } var elemArray = form.elements; // za pierwszym kliknieciem nie dochodzi tutaj, za 2 blad form is undefined for (var i = 0; i < elemArray.length; i++) { var element = elemArray[i]; var elemType = element.type.toUpperCase(); var elemName = element.name; if (elemName) { if (elemType == "TEXT") GetElemValue(elemName, element.value); } } return qstr; }
i kod html, który jest w większej części dodany przez appendchildy
<form id="purchaseContainer1" onsubmit="complete(); return false;" name="senddata"> <div id="addInpt1" class="add" style="display: block;"> <button class="add" onclick="addInpt(); return false;">dodaj pozycję</button> <input class="complete" type="submit" value="wyśli"/> //przycisk, który muszę kliknąć 2 razy zeby przeszła funkcja:/ </div> <div class="label2">Zakup</div> <div class="label2">Ilosc</div> <div class="label2">Cena (zł)</div> <div class="label2">Prowizja (%)</div> <input class="purchaseItem" type="text" name="purchase[]"/> <input class="purchaseItem" type="text" name="volume[]"/> <input class="purchaseItem" type="text" name="price[]"/> <input class="purchaseItem" type="text" name="procentage[]"/> <input class="purchaseItem" type="text" name="purchase[]"/> <input class="purchaseItem" type="text" name="volume[]"/> <input class="purchaseItem" type="text" name="price[]"/> <input class="purchaseItem" type="text" name="procentage[]"/> <input class="purchaseItem" type="text" name="purchase[]"/> <input class="purchaseItem" type="text" name="volume[]"/> <input class="purchaseItem" type="text" name="price[]"/> <input class="purchaseItem" type="text" name="procentage[]"/> </form>
dla send(null) tez nie dochodzi do konca za pierwszym razem, co tu jest nie tak?