我尝试制作一个表单来使用 AJAX 更新状态(选择(。我拥有的是:
HTML + JS:
<select id="Bname">
<option value="volvo">Volvo</option>
<option value="saab">Saab</option>
<option value="mercedes">Mercedes</option>
<option value="audi">Audi</option>
</select>
<script type="text/javascript">
var sel = document.getElementById('Bname');
sel.addEventListener("change", myFunction);
function myFunction() {
jQuery.ajax({
url : "insert.php",
type : "post",
contentType : 'application/json',
dataType : 'json',
data : {
stat : sel.value
}
})
.done(function() {
console.warn('ok!');
})
.fail(function() {
console.warn('error');
});
console.log(sel.value);
}
</script>
在插入.php文件中,我有:
<?php
defined('_JEXEC') or die;
$stat = $_POST["stat"];
$db = JFactory::getDbo();
$query = $db->getQuery(true);
$fields = array(
$db->quoteName('cars') . ' = ' . $db->quote($stat)
);
$conditions = array(
$db->quoteName('id') . ' = 1'
);
$query->update($db->quoteName('#__cars'))->set($fields)->where($conditions);
$db->setQuery($query);
$result = $db->execute();
?>
问题是 – 为什么 PHP 文件没有插入?插入.php中的任何一种脚本都不起作用。它是用Joomla制成的。 谢谢大家!
如果你用单个文件调用 ajax,你需要首先导入 joomla 库。