这是代码
var $p = $("#tabla_inscripcion");
$p.load("Cursos_Existentes.php");
据说一个名为2列的表,另一个按钮。后:
$p.on('click','#tabla_cursos button.curso_ex',function(){
var curso = $(this).attr("id");
curso = curso.replace('_ver','');
if($(this).val() == 'no'){
$(this).val("si");
$("#"+curso).after('<tr class="cursos_'+curso+'"></tr>');
$('.cursos_'+curso).load("Horarios_Cursos.php?curso="+curso);
}
else{
$(this).val("no");
$(".cursos_"+curso).remove();
}
});
该按钮将在您单击的行下方添加一行,该行将加载一个包含3列的表,其中一列将有一个按钮。如果你再次点击我被淘汰的那一行。
问题如下:
$p.on('click','#tabla_cursos #hor_cur tr td button.inscribir',function(){
$.ajax({
type: post,
url: "inscribir_curso.php",
data: "id_curso="+id,
success: function(){
$("#tabla_inscripcion").load("Cursos_Existentes.php");
}
});
应该点击使用的按钮是由ajax发送的一个变量帖子,没有错误只会在没有按钮所在的表行的情况下再次充电,但按钮什么都不做,有什么问题?
我正在使用翻译,抱歉,如果不理解的话。
更新2012/05/11
好吧,几乎所有内容都是在html中完成的
<div class="tabla_inscripcion" id="tabla_inscripcion" align="center">
</div>
<?php
header("Content-Type: text/html;charset=utf-8");
include 'Conexion.php';
session_start();
$id_alumno = $_SESSION['id_login'];
$sql = "SELECT DISTINCT curso FROM cursos WHERE id_curso NOT IN (SELECT id_curso FROM inscripsion WHERE id_alumno=$id_alumno)";
$result = mysql_query($sql, $conexion);
echo '<table id="tabla_cursos">';
echo '<tr class="encabezado"><td>CURSOS</td></tr>';
if(mysql_num_rows($result) != 0){
while($count = mysql_fetch_array($result)){
echo '<tr id="'.str_replace(' ', '_', $count["curso"]).'">';
echo '<td>'.$count["curso"].'</td>';
echo '<td><button value="no" class="curso_ex" id="'.str_replace(' ', '_', $count["curso"]).'_ver">ver</button></td>';
echo '</tr>';
}
}
else{
echo '<tr><td>no hay cursos disponibles</td></tr>';
}
echo '</table>';
?>
这是创建具有三列
的表的代码<?php
header("Content-Type: text/html;charset=utf-8");
include 'Conexion.php';
$curso = str_replace('_', ' ', $_GET["curso"]);
$i=0;
$sql = "SELECT cursos.id_curso, curso, dias, horario, nombre
FROM cursos INNER JOIN instructor
ON cursos.id_instructor = instructor.id_instructor
AND curso='$curso'";
$result = mysql_query($sql, $conexion);
echo '<td>';
echo '<table id="horarios_cur">';
echo '<tr>
<td id="dia_cur">Días</td>
<td id="hor_cur">Horario</td>
<td id="nom_prof">Profesor</td>
<td id="but_insc"></td>
</tr>';
if(mysql_num_rows($result) != 0){
while ($count = mysql_fetch_array($result)){
echo '<tr id="'.$curso.'_'.$i.'">';
echo '<td id="hor_cur">'.$count["dias"].'</td>';
echo '<td id="hor_cur">'.$count["horario"].'</td>';
echo '<td id="nom_prof">'.$count["nombre"].'</td>';
echo '<td id="but_insc"><button class="inscribir" id="'.$count['id_curso'].'">inscribir</button></td>';
echo '</tr>';
$i++;
}
}
else{
echo '<tr><td id="hor_cur">'.$curso.'</td></tr>';
}
echo '</table>';
echo '</td>';
?>
我可能无法解释,问题不在于代码失败,但按钮没有反应,因为代码没有找到它
我觉得很长,但我很感激回复
答案 0 :(得分:0)
$p.on('click','#tabla_cursos #hor_cur tr td button.inscribir', function(){
$.ajax({
type: "POST",
url: "inscribir_curso.php",
data: "id_curso="+id,
success: function(){
$("#tabla_inscripcion").load("Cursos_Existentes.php");
}
});
});
不确定它是否只是你帖子中的拼写错误,但是你在“POST”上缺少引号,以及点击功能的结尾。你的选择器似乎过于冗长和复杂,但没有任何HTML,很难判断它是否正确。