Javascript 模态对话框不工作
在下面的代码中,我想在模式窗口中显示数据。我的目标是在模式对话框中显示搜索到的数据。实际结果是它们显示在表单上方,而不是在模式对话框中。我尝试了一些步骤,但我无法生成预期的结果。请帮助我Javascript 模态对话框不工作,javascript,php,modal-dialog,simplemodal,Javascript,Php,Modal Dialog,Simplemodal,在下面的代码中,我想在模式窗口中显示数据。我的目标是在模式对话框中显示搜索到的数据。实际结果是它们显示在表单上方,而不是在模式对话框中。我尝试了一些步骤,但我无法生成预期的结果。请帮助我 <?php $search = (isset($_POST['search']) ? $_POST['search'] : null); mysql_connect("localhost", "root", "") OR die (mysql_error()); mysql_select_d
<?php
$search = (isset($_POST['search']) ? $_POST['search'] : null);
mysql_connect("localhost", "root", "") OR die (mysql_error());
mysql_select_db ("slseatapp") or die(mysql_error());
$query = "SELECT * FROM coursemaster WHERE course_code LIKE '%$search%' or course_name like '%$search%'";
$result = mysql_query($query) or die (mysql_error());
$msg ;
if($result)
{
while($row=mysql_fetch_row($result))
{
$msg=$msg ."ID=".$row[0].",COURSE CODE=".$row[1].",COURSE NAME=".$row[2];
}
echo"<div id='overlay'>('$msg ');</div>";
}
else
{
echo "No result";
}
?>
<script>function overlay(){
el = document.getElementById('overlay');
el.style.visibility = (el.style.visibility == 'visible') ? 'hidden' : 'visible';
}function close() {
document.getElementById('overlay').style.visibility = 'hidden';
}</script>
<style>#overlay div {
width:300px;
margin: 100px auto;
background-color: #fff;
border:1px solid #000;
padding:15px;
text-align:center;
}</style>"
<form action="look.php" method="post">
<center> SEARCH:<input type="text" name="search" placeholder="SEARCH"><br></center>
<center> <input type="submit" name="hhhh" class="btn-success btn"></center>
</form>
在我看来,JS并没有等待DOM准备就绪。实现这一点的一种方法是将这部分代码放到php文件的底部
<script>function overlay(){
el = document.getElementById('overlay');
el.style.visibility = (el.style.visibility == 'visible') ? 'hidden' : 'visible';
}function close() {
document.getElementById('overlay').style.visibility = 'hidden';
}</script>
函数覆盖(){
el=document.getElementById('overlay');
el.style.visibility=(el.style.visibility=‘可见’)?‘隐藏’:‘可见’;
}函数关闭(){
document.getElementById('overlay').style.visibility='hidden';
}
因为在这一部分中没有来自PHP的任何内容,所以您不必将其包装为字符串,也不必在PHP中进行回显,只需按原样放置即可
这里有一个友好的提示:代码看起来有点凌乱。最好将关注点、PHP-HTML、JS和CSS分离,然后进行重组。我将JS和CSS代码分开放置,但不起作用,我编辑并放置在@CMERTAYKTRY上方,将“脚本”部分放在底部。您不会显示所显示的任何JS是如何触发的。在任何情况下,如果您想在模式对话框中显示结果,您需要在某处调用JS alert()或类似函数。该调用的一个参数需要用PHP搜索结果填充。告诉我什么需要更改,以及@Sam Pinkus的位置