脚本在输出数据时无法正常运行

帕特里克·L·Çakırlı

昨天晚上,我想出了如何输出数据,将数据从索引页面上的表单发送到内容页面,然后将其结果显示在内容div内的索引页面上。

但是现在我有一个新问题。我的Javascript不会将其函数(renderGrid)应用于我的内容div,除非我弄乱了视口,因为那样window.addEventListener(“ resize”,renderGrid,false); 发挥作用。

我不知道该怎么解释。

谢谢,

index.html

<form id="search_form" action="content.php" method="POST">           
   <input id="form_search" type="search" name="name">               
   <input id="form_submit" type="submit" name="submit" value="Enter">
</form>

<div id="content"></div>

js

$(document).ready(function(){
    var form = $('#search_form');
    form.submit(function(event){
        var form_search = $('#form_search').val();
        if($.trim(form_search) != '') {
            $.post("content.php", {name: form_search}, function(data){
                $('#content').html(data);       
            });
        }
        event.preventDefault();
    });
});

function renderGrid(){

var blocks = document.getElementById("content").children;
var pad = 20, cols = 3, newleft, newtop;
for(var i = 1; i < blocks.length; i++){
    if(i % cols == 0){
        newtop = (blocks[i-cols].offsetTop + blocks[i-cols].offsetHeight) + pad;
        blocks[i].style.top = newtop+"px";
    }else{
        if(blocks[i-cols]){ 
            newtop = (blocks[i-cols].offsetTop + blocks[i-cols].offsetHeight) + pad;
            blocks[i].style.top = newtop+"px";
        }
        newleft = (blocks[i-1].offsetLeft + blocks [i-1].offsetWidth) + pad;
        blocks[i].style.left = newleft+"px";
    }
    }
}
window.addEventListener("load", renderGrid, false); 
window.addEventListener("resize", renderGrid, false);

content.php

<?php
include ("connect.inc.php");
$userinput = $_POST['name'];
$query = "SELECT * FROM xxx WHERE xxx LIKE '%$userinput%'";
$result = mysqli_query($db_link, $query) or die(mysqli_error($db_link));
while($row = mysqli_fetch_assoc($result)){  
?>

<article>
    <?php echo $row['xxx'];?>
</article>

<?php 
}
?>

图片1 =这就是它的作用。(当我提交俄罗斯时,查询将给我两个结果,但是正如您所看到的,这些结果现在在输出时彼此重叠。这是因为JavaScript尚未意识到,我已经输出了一些东西。)

图片2 =这是输出时的样子。(现在,如果我弄乱了视口,例如打开检查,我的JavaScript将开始工作(window.addEventListener(“ resize”,renderGrid,false);),所以我的JavaScript可以工作,但是当我输出数据时却不能工作当我输出数据时自动)。

u_mulder

load当您的对象()完成加载时触发事件(如手册中所述window加载一些ajax内容时不会触发此事件。因此,您应该renderGrid显式调用

$.post("content.php", {name: form_search}, function(data){
    $('#content').html(data);       
    renderGrid();
});

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Raspberry Pi的Python脚本无法正常运行

来自分类Dev

Apps脚本HTMLService无法正常运行

来自分类Dev

jQuery脚本无法正常运行

来自分类Dev

PowerShell脚本无法从Windows Task Scheduler中正常运行

来自分类Dev

Shell脚本中的输出重定向无法完全正常工作

来自分类Dev

简单用户脚本运行缓慢,有时无法正常工作

来自分类Dev

数据框索引操作无法正常运行

来自分类Dev

Python脚本无法从终端正常运行

来自分类Dev

运行代码时,ASP.NET数据无法输出,但如果处于调试模式,则显示值

来自分类Dev

脚本无法正常运行

来自分类Dev

启动时无法运行脚本

来自分类Dev

Bash脚本无法从crontab正常运行

来自分类Dev

Powershell脚本的输出无法正常工作?

来自分类Dev

使用`sudo`的Bash脚本可从cli正常运行,但单击以运行时无法正常运行

来自分类Dev

脚本无法正常运行onclick

来自分类Dev

“复制到输出目录”无法正常运行

来自分类Dev

Google Apps脚本中的createFile()无法正常运行

来自分类Dev

脚本在启动时无法正确运行

来自分类Dev

bash脚本无法通过crontab正常运行

来自分类Dev

启动时无法运行python脚本

来自分类Dev

运行级别0脚本在关闭时无法正常运行

来自分类Dev

关闭脚本无法正常运行

来自分类Dev

Shell脚本无法正常运行

来自分类Dev

运行bash脚本时无法自行统计

来自分类Dev

tcl脚本无法正常运行

来自分类Dev

使用at命令运行脚本无法完全正常运行

来自分类Dev

PowerShell脚本无法从Windows Task Scheduler中正常运行

来自分类Dev

Shell脚本中的输出重定向无法完全正常工作

来自分类Dev

Bash脚本将TUI输入转换为数据库输出无法正常工作

Related 相关文章

热门标签

归档