2011-12-27 65 views
0

有没有什么方法可以在没有使用AJAX触发器的情况下每2秒更新一次ASP.NET/C#中的HTML DIV图层?最好使用JavaScript(主要优先级)或jQuery(如果JavaScript不可用)。异步更新没有AJAX的DIV层

+0

用什么更新DIV?您需要提供有关此问题的更多信息。 – JohnP

+0

您的意思是更新,从服务器中检索新数据,或者使用加载的初始数据进行更新?为什么你想避免Ajax? –

+3

jQuery *是* JavaScript。没有什么你可以用jQuery做,你离不开它。 * Ajax *表示异步JavaScript和XML,仅仅是客户端和服务器之间通信方式的名称。 –

回答

0

首先 - jQuery仍然是JavaScript,因为它是用该语言编写的。

假设,您将更改DIV中的text/html。 我们有一个html:

<div id='divId'> </div> 

而且通过脚本是改变div的内容。

var textOrHtml = "whatever, you can put here also < a href='#'> html </a>"; 

//without jquery 
document.getElementById("divId").innerHTML = textOrHtml; 

// by jquery 
$("#divId").html(textOrHtml); 

</script> 

如果您想更新数据来自服务器......没有Ajax不能做到这一点,但是是一个解决方案,但很非涂装 - 插槽从例如使用闪光动作脚本

+0

这不是我想要的。 –

+0

如果数据必须来自服务器,并且替换将没有重新加载页面,则不能没有ajax – abuduba

0

如果您必须更新从服务器的数据div。你必须使用ajax。

0

有一种方法,而无需使用AJAX来更新页面的一部分,虽然我不明白你为什么会这样做:

里面的DIV,你必须使用一个iframe你可以风格你iframe具有你想要的大小。 您会将iframe指向您的dinamic页面(您创建的脚本),并且必须使该脚本输出HTML代码,该代码将显示在iframe上(这将看起来像您网页上的DIV)。

有2个办法,我想你可以用它来更新您的iframe:

1 - 使用JavaScript,你也许可以这样做:

function Reload() { 
var f = document.getElementById('iframe1'); 
f.src = f.src; 
} 

2-使用元刷新标记。这个标签必须位于脚本上生成的HTML上。更多信息here

希望这可以给你一个正确的方向。如果您还有其他问题,请告诉我...