@SokolSokolov

Почему в ajax -запросе не передаются параметры с помощью метода send?

Добрый день!

Есть код JS:
<script type="text/javascript" src="AJAX/ajax.js" ></script>
	
    <script type="text/javascript">
	
$(document).ready(function(){  

$(".tabs").lightTabs();

  $('#btn').click(function(){
	var dataStart=encodeURIComponent(document.getElementById('dataStart').value);
	var dataFinish=encodeURIComponent(document.getElementById('dataFinish').value);
		
	var obj="startData="+dataStart+"&finishData="+dataFinish;
	var param= JSON.stringify(obj);
	var url='newTable.php';
	request.open("POST", url, true); 
	request.setRequestHeader("Content-Type", "application/x-www-form-urlencoded"); 
	request.onreadystatechange=showInfo;
	request.send(obj);
		alert(obj);
	});
});


HTML такой:

<body>
<div class="tabs">
    <ul>
        <li>Первая вкладка
			
		</li>
        <li>Вторая вкладка</li>
        <li>Третья вкладка</li>
    </ul>
    <div>
        <div>
			<p>Выберите дату начала периода: </p>
			<input onClick="xCal('dataStart')" onKeyUp="xCal()" id="dataStart">
			<p>Выберите дату окончания периода: </p>
			<input onClick="xCal('dataFinish')" onKeyUp="xCal()" id="dataFinish">
			
			<button id="btn">Сформировать</button>
			<div id="mysearch"></div>
			<table id="me_table"></table>
			<div id="gridpager"></div>
			
			
		
		</div>
        <div>Второе содержимое</div>
        <div>Третье содержимое</div>
    </div>            
</div> 


</body>


В PHP скрипт (newTable.php) необходимо передать две даты. Но по какой-те причине до php-скрипта они не доходят. Помогите разобраться в чем причина.
  • Вопрос задан
  • 87 просмотров
Пригласить эксперта
Ответы на вопрос 1
zkrvndm
@zkrvndm
Архитектор решений
Используйте jQuery.ajax() для отправки формы:
jQuery(function(){  

	jQuery(".tabs").lightTabs();

	jQuery('#btn').click(function(){
		
		var dataStart = document.getElementById('dataStart').value;
		var dataFinish= document.getElementById('dataFinish').value;
		var sendObj = { 'startData' : dataStart, 'finishData' :  dataFinish};
		
		jQuery.ajax({
			url: 'newTable.php',
			method: 'POST',
			cache: false,
			data: sendObj,
			dataType: 'html',
			success: function(html){
				alert("Успех! Ответ сервера:\n" + html);
			},
			error: function(obj) {
				alert('Ошибка!');
			}
		});
		
	});
  
});
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы