Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/79.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 简单jquery事件处理程序_Javascript_Jquery - Fatal编程技术网

Javascript 简单jquery事件处理程序

Javascript 简单jquery事件处理程序,javascript,jquery,Javascript,Jquery,目前jquery存在一些实际问题。基本上到目前为止我所知道的是。一旦提交表单,就会弹出一个灰色框,其中包含相关信息 但我需要做的是刷新整个页面,然后让灰色框出现 我有以下代码 $("#ex1Act").submit(function() { //$('#example1').load('index.php', function() $("#example1").gbxShow();

目前jquery存在一些实际问题。基本上到目前为止我所知道的是。一旦提交表单,就会弹出一个灰色框,其中包含相关信息

但我需要做的是刷新整个页面,然后让灰色框出现

我有以下代码

 $("#ex1Act").submit(function() {
        //$('#example1').load('index.php', function()                                 
        $("#example1").gbxShow();
        return true;
      });
被注释掉的行在表单提交后再次加载页面,其他代码会弹出灰色框

这是他们的一种表达方式:

$('#example1').load('index.php', function() 
已经渗出,请执行以下操作:

 $("#example1").gbxShow();
希望这有意义。

这是不可能的

表单提交后,提交表单的页面上运行的Javascript将完全消失;它不能影响表单返回的页面

相反,您应该以写入
$(“#example1”).gbxShow()的形式放置服务器端代码
块中进行编码>。

这是不可能的

表单提交后,提交表单的页面上运行的Javascript将完全消失;它不能影响表单返回的页面


相反,您应该以写入
$(“#example1”).gbxShow()的形式放置服务器端代码
块中执行code>。

您遇到的问题是网页是“无状态的”。这意味着您不能执行一点JavaScript,刷新页面并继续使用JavaScript。刷新页面时,将丢失当前状态,页面将从头开始

您需要重新设计您的设计,以牢记页面生命周期(即所有JavaScript在导航时永久停止)


一种解决方案可能是使用jQueryAjax表单插件,它将表单提交到服务器并返回提交结果,这将避免破坏页面生命周期。然后,您可以根据需要显示该框。

您遇到的问题是网页是“无状态的”。这意味着您不能执行一点JavaScript,刷新页面并继续使用JavaScript。刷新页面时,将丢失当前状态,页面将从头开始

您需要重新设计您的设计,以牢记页面生命周期(即所有JavaScript在导航时永久停止)


一种解决方案可能是使用jQueryAjax表单插件,它将表单提交到服务器并返回提交结果,这将避免破坏页面生命周期。然后,您可以根据需要显示框。

标准方法是让服务器在对表单post的响应中返回灰框内容


在jquery中,您可能可以通过将页面和灰框放在单独的iFrame中来实现这一点,这样就可以避免页面刷新了。标准的方法是让服务器在对表单post的响应中返回灰框内容


在jquery中,您可能可以通过将页面和灰框放在单独的iFrame中来实现这一点,这样它就不会受到页面刷新的影响,为什么不正常提交表单(即不使用JavaScript)并向结果页面添加一个变量来表示需要显示灰框呢?像这样:

<?php if(isset($_POST['submit'])): ?>
    <script type="text/javascript">
        var showGreyBox = true;
    </script>
<?php endif; ?>

var showGreyBox=true;


$(函数(){
if(showGreyBox!==未定义){
//执行代码以显示灰色框
}
});

可能是这样吧?

为什么不正常提交表单(即不使用JavaScript)并在结果页面中添加一个变量,表示需要显示灰框?像这样:

<?php if(isset($_POST['submit'])): ?>
    <script type="text/javascript">
        var showGreyBox = true;
    </script>
<?php endif; ?>

var showGreyBox=true;


$(函数(){
if(showGreyBox!==未定义){
//执行代码以显示灰色框
}
});

类似的情况,也许?

但是如果你的表单提交并且整个页面重新加载,那么之前的代码就会消失……但是如果你的表单提交并且整个页面重新加载,那么之前的代码就会消失……当你重新读到这个问题时,这个加载选项没有多大帮助,当你重读这个问题时,这个加载选项一点帮助都没有,woops。