Witam
w formularzu mam ukryty input, gdzie wczytuje date z kalendarza - przechwytuje dane zdarzenie w JS, gdzie musze przeslac dane z input'a do innego skryptu, ale to oczywiscie za pomoca AJAX'a.
Jak mam to wykonac ?
Witam
w formularzu mam ukryty input, gdzie wczytuje date z kalendarza - przechwytuje dane zdarzenie w JS, gdzie musze przeslac dane z input'a do innego skryptu, ale to oczywiscie za pomoca AJAX'a.
Jak mam to wykonac ?
Ale co konkretnie nie umiesz?
Nie potrafisz zrobić żądania ajax? A może nie potrafisz wybrać wartości inputa z formy? A może coś jeszcze innego? Używasz jakiejś biblioteki do JS? Możesz też zapodać kawałkiem kodu - tym, który przechwytuje submit.
echo CHtml::beginForm('','post',array('id'=>'formTaskItemAjax'));
echo CHtml::hiddenField('calendar'.$index_task, '');
$this->widget('application.extensions.calendar.SCalendar',
array(
'inputField'=>'calendar_txt',
'button'=>'btn_called',
'ifFormat'=>'%Y-%m-%d %H:%M',
'showsTime'=>true,
'onUpdate'=>'myFun',
)
);
echo CHtml::endForm();
Zamieszczam kod w PHP, gdzie korzystajac z framework'a Yii oraz z zewnetrznego kalendarza, probuje automatycznie przeslac dane 'data-czas' po wybraniu daty na kalnedarzu
http://www.w3schools.com/ajax/default.asp
Tam jest dużo na temat technologi webowych.
Ogolnie robisz to tak:
function loadXMLDoc()
{
var xmlhttp;
if (window.XMLHttpRequest)
{// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=new XMLHttpRequest();
}
else
{// code for IE6, IE5
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange=function()
{
if (xmlhttp.readyState==4 && xmlhttp.status==200)
{//tutaj jest call back - wykonywany po zwrocie zapytania xmlhttp
//ustawiamy dla mydiva tekst generowany przez "jakasstrona.php?parametry"
// i znowu np w przypadku googla javascript wrzuca nam tutaj podpowiedzi
document.getElementById("myDiv").innerHTML=xmlhttp.responseText;
}
}
//tutaj dajesz zapytanie ajaxem - wysylasz do innej strony cos np. "jakasstrona.php?wykonaj=" + akcja , gdzie akcja to np. zwroc_podpowiedzi w przypadku googla :) . true oznacza ze dziala asynchronicznie
xmlhttp.open("GET","jakasstrona.php?parametry",true);
xmlhttp.send();
}