使用两个php文件,index.php和search.php。 index将一些参数发送到搜索,它会对数据库执行一些查询,然后返回表中的信息,存储到$ output中。 我现在想在输出中添加一个bootstrap按钮,它调用一个简单的show / hide jQuery函数。 按钮已创建,但在index.php
上测试时它不起作用<div class="col-sm-8">
<table class="table table-hover" id="output">
</table>
<div id="edit" >
<div class="page-header" id="editar" style="display: none;">
<h2 id="producto">Placeholder<button id="exit" type="button" class="btn pull-right"><span class="glyphicon glyphicon-remove"></button><!--Clicking this button hides the edit div and shows the output table--></h2>
</div>
</div>
</div>
exit / editbtn按钮调用以下内容:
<script>
$(document).ready(function(){
$("#exit").click(function(){
$(document.getElementById("edit")).hide();
$(document.getElementById("output")).show();
});
});
$(document).ready(function(){
$("#editbtn").click(function(){
$(document.getElementById("edit")).show();
$(document.getElementById("output")).hide();
});
});
</script>
&#34; editbtn&#34;的定义是在单独的php文件上进行的:
if($query->num_rows){
$rows = $query->fetch_all(MYSQLI_ASSOC);
forEach($rows as $row){
$output .= '<tr><td><button id="editbtn" type="button" class="btn btn-default"><span class="glyphicon glyphicon-pencil"></span></button></td><!--Clicking this button hides the output table and shows the edit div--></tr>';
}
$output .= '</tbody>';
所以最后,我创建了一个带有按钮的表,但是当我点击它时它什么也没做。
答案 0 :(得分:1)
为什么不按顺序尝试?
像:
<script>
$(document).ready(function(){
$("#exit").click(function(){
$("#edit").hide();
$("#output").show();
});
$("#editbtn").click(function(){
$("#edit")).show();
$("#output")).hide();
});
});
</script>
这应该有用,总是你不要按照定义插入带有ajax AND 的编辑按钮,如果你使用的是ID,你应该只有一个元素,如果你有一个foreach ,它可能会给你带来麻烦。
答案 1 :(得分:0)
它似乎是jQuery选择器,它们应该是这样的:
$("#edit").show();
或者在JavaScript中:
document.getElementById('edit').styles.display = "none"; //or use addClass
PD:不要使用两个就绪函数,将侦听器放在同一个函数上;)
编辑:
在函数中添加console.log,并在浏览器的开发人员工具上查看控制台。还尝试注释PHP查询,输出除外。