当前位置: 首页 > 图文教程 > 网络编程 > Javascript > 不用AJAX和IFRAME,说说真正意义上的ASP+JS无刷新技术

Javascript
Javascript 学习笔记 错误处理
Javascript 类的继承实现代码
JavaScript 创建对象和构造类实现代码
JavaScript 学习小结(适合新手参考)
extjs 列表框(multiselect)的动态添加列表项的方法
javascript getElementsByName()的用法说明
Document 对象的常用方法
JS 事件冒泡 示例代码
JS 面向对象的5钟写法
JS 输入字数判断实现代码
Javascript 汉字字节判断
JavaScript 关键字屏蔽实现函数
一句话JavaScript表单验证代码
利用javascript实现一些常用软件的下载导航
jQuery 相关控件的事件操作分解
JavaScript 异步调用框架 (Part 1 - 问题 & 场景)
JavaScript 异步调用框架 (Part 2 - 用例设计)
JavaScript 异步调用框架 (Part 3 - 代码实现)
JavaScript 异步调用框架 (Part 4 - 链式调用)
JavaScript 异步调用框架 (Part 5 - 链式实现)

Javascript 中的 不用AJAX和IFRAME,说说真正意义上的ASP+JS无刷新技术


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-12   浏览: 340 ::
收藏到网摘: n/a

注明:以下方法都经过实例和开发的长期验证,其实这些技术早就有,今天只不过自己归纳一下 网上流传的什么<<AJAX vs ASP传统无刷新>>中的ASP无刷新,加个IFRAME,弄个JS根本不能称之为无刷新.....
一下代码未区分大小写,请自行修改!
全静态无刷新思路:
<HTML>
<SCRIPT SRC=""></SCRIPT>//当前页面全局的 无数新调用
<SCRIPT> //一系列JS调用
FUNCTION XX(FUN_NAME,PARAMETER_NAME,PARAMETER_VALUE)//参数自己设定
{
DOCMENT.SCRIPTS[0].SRC='AJAX.ASP?'+PARAMETER_NAME+'='+PARAMETER_VALUE;//参数以此类推
}
</SCRIPT>
<BODY>
//示例调用一,直接调用ASP
我的数据库有<SCRIPT SRC="GET_COUNT.ASP?ID=XXX"></SCRIPT>条
//示例调用二,事件调用AJAX.ASP
我的数据库有<LABEL ID="COUNT"></LABEL>条<INPUT TYPE="BUTTON" ONCLICK="JAVASCRIPT:XX(COUNT,'ID',DOCUMENT.ALL.ID.VALUE);">
</BODY>
</HTML>
//示例二中AJAX.ASP代码
<%
SET RS = CONN.EXECUTE(SQL_STR)
RESPONSE.WRITE "DOCUMENT.GETELEMENTBYID('COUNT').VALUE = '"&RS("COUNT")&"'"
%>
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
以下省略部分HTML代码,只说明思路
//示例三 FORM表单ONSUBMIT事件调用AJAX.ASP
<SCRIPT SRC=""></SCRIPT>//这句是必须的
<SCRIPT>
function CHECK()
{
alert('1');
//document.getElementByID("")
document.scripts[0].src = "AJAX.ASP?a="+escape(document.getElementById('T1').value);//这里给第一个script.src赋值
alert(document.scripts[0].src);//查看测试地址是否正确
return false;
}
</SCRIPT>
<FORM METHOD="POST" ACTION="" ONSUBMIT="return CHECK();" NAME="FORM1">
<INPUT TYPE="TEXT" NAME="T1" ID="T1">
<INPUT TYPE="SUBMIT" VALUE="SUBMIT" >
</FORM>
//示例三AJAX.ASP代码
<%
RESPONSE.WRITE "alert('"&request("a")&"');"//////或者写response.write "document.getelementbyid('id').innerhtml='某些html代码';"
%>
//////////////////////////////////////////////////////////////////////////////////////////////////
优点:
此种无刷新方法对比AJAX技术的优势在于,这种方法所需要编写的代码更少,更简洁,开发速度更快,不用书写过于庞大复杂的JS判断,同样利用JS,但没有用到DOM XML,同样有跨平台的优势,能达到AJAX同样的用户体验效果,可以和AJAX同时使用,不同功能的实现代码书写模式和流程,几乎相同,更易提高代码复用性,事实上只需建立2个文件就可以实现网站各种不同的功能
缺点:
因为此技术完全依靠JS给URL或者COOKIES赋值,然后通过URL和cookies传参,但URL和cookies参数大小和长度是有所限制的,所以无法像AJAX那样传送大量信息除非仿照AJAX或直接用AJAX完成,不过我相信会找到更好的解决方案