Php jQuery.trigger()单独使用<;选择>;菜单
我有一个jQuery/AJAX函数,当从Php jQuery.trigger()单独使用<;选择>;菜单,php,javascript,jquery,html,Php,Javascript,Jquery,Html,我有一个jQuery/AJAX函数,当从菜单更改触发时,它会将数据发布到php查询并返回结果。结果与我的表格中的菜单放在同一行的中。当选择菜单被更改时,该功能工作正常,但我还想在页面加载时触发该功能。我试过使用.trigger(change)在我的代码末尾,但所做的只是将结果(在本例中为2,因为只有两个表行)放在的最后一行,而不是将结果放在父行的该单元格中。有人能帮我让函数在页面加载时运行,但结果与触发结果的选择菜单位于同一行的 以下是jQuery: <script type="text/
菜单更改触发时,它会将数据发布到php查询并返回结果。结果与我的表格中的
菜单放在同一行的
中。当选择菜单被更改时,该功能工作正常,但我还想在页面加载时触发该功能。我试过使用.trigger(change)代码>在我的代码末尾,但所做的只是将结果(在本例中为2,因为只有两个表行)放在
的最后一行,而不是将结果放在父行的该单元格中。有人能帮我让函数在页面加载时运行,但结果与触发结果的选择菜单位于同一行的
以下是jQuery:
<script type="text/javascript">
$(document).ready(function(){
$('.typeval').change(function(){
var movement = $(this).val();
var client_id = $(this).parent().siblings().find('.clientval').val();
var class_id = <? echo $class_id; ?>;
$count = $(this).parents('tr').find('label.count');
$.ajax({
type: "POST",
url: "movement_count.php",
data: {movement:movement, client_id:client_id, class_id:class_id},
dataType: "json",
success:(function(output) {
$.each(output, function(index, value){
//alert(value);
$count.append(output[index]);
}) // each
}) // success
}); // ajax
}); // .typeval
}); // document
</script>
尝试使ajax同步:
async: false
您的$结尾缺少一个分号。JS中不需要每个…
@shmiddy分号。能否向我们展示触发更改事件plz的代码?这只会给出不同的结果,但不是正确的结果。这将在第一行上运行函数,但在最后一行中放置,然后运行下一行,但替换第一行的结果…所有结果仍仅显示在表的最后一行中。此最新编辑返回第一行选择菜单的值,而不是查询结果…它仍将其放置在表的最后一行中。确定,ajax函数中的回调在onload change函数执行后返回。因此,它无法找到$count。使ajax同步,它等待回调返回,然后完成执行。感谢您的帮助和解释。非常感谢。
<?php
include('core/init.php');
protect_page();
$class_id = $_POST['class_id'];
if (isset($_POST['client_id'])){
$xmovement = x_move_performed($class_id, $_POST['client_id'], $_POST['movement']);
echo json_encode ($xmovement);
} // isset
?>
function x_move_performed($class_id, $client_id, $movement){
$class_id = (int)$class_id;
$client_id = (int)$client_id;
$query = "SELECT COUNT(`movement`) FROM `completed_movements` WHERE `class_id` = $class_id AND `client_id` = $client_id AND `movement` = '$movement'";
$res = mysql_query($query);
$result = mysql_fetch_assoc($res);
return $result;
}
async: false