У меня возникли проблемы с правильной работой функции AJAX/JSON. У меня была функция, захватывающая значение из раскрывающегося списка, но теперь я хочу использовать привязку для установки ее значения.JSON onFailure issue
Я думал, что было бы просто просто использовать событие onClick, чтобы передать строку функции, которую я использовал для раскрывающегося списка, но я получаю предупреждение в событии JSON onFailure, даже если данные добавляются в MySQL. Я попытался удалить предупреждение из onFailure
, но потом он не добавляет данные. Выпадение по-прежнему продолжает работу отлично, никаких предупреждений. (Следует отметить, что удаление предупреждение также сломал мою выпадающий)
первый я добавить событие OnClick ...
<a href="<?php echo Settings::get('app.webroot'); ?>?view=schedule&action=questions" onmouseout="MM_swapImgRestore();" onmouseover="MM_swapImage('bre','','template/images/schedule/bre_f2.gif',1)" onclick="assignCallType('testing')";>
второй проверяю main.js.php
function assignCallType(type) {
alert(type);
new Request.JSON({
url: "ajax.php",
onSuccess:
function(rtndata,txt){
if (rtndata['STATUS'] != 'OK')
alert('Status was not okay');
},
onFailure :
function() {
alert("onFailure")
}
}).get({
'action': 'assignCallType',
'call_type': type
});
}
третий Ajax .php: переменная возвращается в PHP и значения добавляются в MySQL, но я получаю уведомление в случае JSON OnFailure
if ($_GET['action'] == "assignCallType") {
if ($USER->isInsideSales()) {
$call_type = $_GET['call_type'];
$_SESSION['callinfo']->setCallType($call_type);
$_SESSION['callinfo']->save($callid);
echo json_encode(array('STATUS'=>'OK'));
} else {
echo json_encode(array('STATUS'=>'DENIED'));
}
}
Любая идея, где я ошибаюсь. Единственная разница между этим и рабочим падением - это то, как была вызвана функция, я использовал onchange="assignCallType(this.value)"
.
Я думаю, ваше право - но я не получаю сообщение об ошибке с выпадающим списком ... и если я уйду из OnFailure все вместе я не добавляю данных на mySQL, извините, я не понимаю Mootools достаточно, чтобы проверить объект XMLHttpRequest. – Mikey1980
, даже если у меня есть onFailure, сделайте что-нибудь, кроме предупреждения, это не добавит данных ... человек, я смущен. – Mikey1980
Попробуйте изменить обработчик onFailure на то, что я показал выше в своем ответе. –