`
javajack
  • 浏览: 22097 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

DWR动态执行javascript

阅读更多

一直在用dwr处理页面的局部更新,在调用action返回的data中存在有javascript代码

执行时javascript代码会不起作用。

DWRUtil.setValue("showdata", data, {escapeHtml:false});

 其中showdata为DIV的ID,DATA为要放入的数据,如何处理呢?查看了下DWR的util.js文件有这个一个函数dwr.util.setValue,函数的最后一行

ele.innerHTML = val;

 这里的ele即为showdata,val即为Data,这样的javascript是不被执行的。虽然说ie中有defer属性,可以使新添加的javascript起作用,但在其它浏览器中是不行的,

如何解决呢,为了适应多浏览器,需要将val中javascript代码分离出来,动态加载到页的head区域,浏览器将会识别你加入的javascript,代码如下:

 

ele.innerHTML = val;
var reg = /<script[^>]*>([\s\S]*)<\/script>/ ; 
var match = val.match(reg);
    if (match!=null && match.length>0)
	{
    	var MyScript = match[1];
    	var script=document.createElement("script");//创建新的<script>标签
        script.text=MyScript;//给新的script标签赋值
    	document.body.appendChild(script); //在header中添加也行    
    	
	}

ok,可以了,就这样。

注意,那个正则表达式只适用于data中包含一个"<script></script>"的,多个?不管用,自己想办法吧:)

分享到:
评论

相关推荐

    DWR js框架 javascript框架 web与java交互 Direct Web Remoting Ajax开源框架

    - **Remote Procedure Call (RPC)**:DWR支持通过HTTP协议执行远程过程调用,使得JavaScript可以直接调用Java方法。 - **Marshalling and Unmarshalling**:DWR自动处理数据在JavaScript对象和Java对象之间的序列...

    JavaScript:DWR的用法实例

    JavaScript Direct Web Remoting (DWR) 是一个开源的JavaScript库,它允许Web应用程序在客户端的JavaScript和服务器端的Java之间进行安全、简单的异步通信。这个框架极大地简化了AJAX(Asynchronous JavaScript and ...

    DWR.rar_javascript

    2. **JavaScript接口**:DWR自动生成JavaScript接口,使得前端可以直接调用这些接口来执行服务器上的Java方法。 3. **调用**:在JavaScript中,通过这些接口发送异步请求,DWR引擎在后台处理请求,执行相应的Java...

    dwr和javascript的相互应用 ajax的应用 dwr的登陆验证

    通过DWR,开发者可以利用Ajax技术实现动态、无刷新的交互,比如在这个例子中的登录验证。 **登录验证**是Web应用中的基本功能,用于确认用户身份。通常,这涉及到收集用户的用户名和密码,然后在服务器端检查这些...

    dwr demo dwr简单使用

    通过查看网页的JavaScript控制台,你可以看到DWR调用的结果,验证服务器端的方法是否正确执行。 8. **调试与优化**:DWR提供了丰富的日志功能和错误处理机制,这有助于你在开发过程中调试和优化代码。通过调整`dwr....

    初学DWR 动态添加选择项

    通过学习和实践DWR动态添加选择项,你可以更深入地理解DWR的工作原理,以及它如何简化JavaScript和服务器端之间的交互。这只是一个简单的示例,实际应用中,DWR可用于构建更复杂的功能,如实时数据显示、表单验证等...

    dwr城市选择的联动,util.js方法的使用,动态table

    DWR允许我们在JavaScript中直接调用服务器端的Java方法,从而实现动态交互。 首先,我们需要理解DWR的核心概念。DWR是一种开源框架,它使得Web应用可以安全地在浏览器和服务器之间进行异步通信,而无需使用...

    Dwr例子带注释

    - 浏览器加载HTML页面,执行JavaScript代码。 - JavaScript通过DWR发起HTTP请求到服务器。 - DWR Engine接收到请求后,根据`dwr.xml`配置调用相应的Java方法。 - 服务器执行Java方法,返回结果。 - DWR将结果...

    java dwr 框架源码

    2. **DWR的工作原理**:DWR通过动态生成JavaScript库,使得客户端可以直接调用服务器端的Java方法。这些JavaScript库包含了远程方法的代理,当在浏览器中执行这些方法时,DWR会自动创建HTTP请求,将调用发送到服务器...

    DWR推送功能实现实例(前段,后台函数互调)

    DWR的核心是通过动态生成JavaScript库,使JavaScript可以直接调用Java对象的方法。这种机制依赖于HTTP长连接或短连接,使得服务器能够主动向客户端推送数据,而不仅仅是响应客户端的请求。 **DWR的组成**: DWR包含...

    DwrRefreshDemo(动态刷新).rar

    DWR (Direct Web Remoting) 是一个开源的Java库,它允许Web应用程序在客户端和服务器之间进行实时通信,实现页面的动态刷新。DWR通过AJAX(Asynchronous JavaScript and XML)技术来实现在不刷新整个页面的情况下...

    远程调用Dwr

    DWR的核心功能是实现了JavaScript和Java之间的远程方法调用(RPC),使得Web应用可以实现动态更新,提供类似于桌面应用的用户体验。 **DWR的简介** DWR最初由Alex Russell开发,旨在解决Web应用中AJAX...

    dwr 包的 使用入门

    Direct Web Remoting (DWR) 是一种开源的Java库,它允许Web应用程序在浏览器和服务器之间进行实时的、安全的、动态的JavaScript到Java的方法调用。DWR简化了Ajax(Asynchronous JavaScript and XML)开发,使得前端...

    javascript_框架dwr_jar包

    JavaScript框架DWR(Direct Web Remoting)是一种在Web应用程序中实现客户端与服务器端直接通信的技术。它通过Java的jar包形式提供服务,使得...通过理解并熟练运用DWR,开发者可以构建出更加动态和高效的Web应用。

    DWR让Ajax如此简单

    3. **生成JavaScript接口**: DWR自动生成JavaScript接口,开发者只需调用这些接口即可执行服务器端的方法。 4. **调用服务器方法**: 在JavaScript代码中,像调用本地函数一样调用这些接口。 5. **处理回调**: ...

    dwr入门+springmvc实现

    利用DWR可以在客户端利用JavaScript直接调用服务端的Java方法并返回值给JavaScript就好像直接本地客户端调用一样(DWR根据Java类来动态生成JavaScrip代码).它的最新版本DWR0.6添加许多特性如:支持Dom Trees的自动配置...

    dwr实现ajax功能ajax+dwr

    4. **在HTML/JavaScript中使用DWR**: 在客户端页面上引入DWR的JavaScript库,并调用生成的接口执行服务器端的方法。 5. **处理回调**: 服务器响应后,DWR会调用预先定义的回调函数,将结果传递给前端进行处理。 在...

    springboot整合dwr实现js调用java方法

    SpringBoot整合Direct Web Remoting (DWR)是一个常见的技术实践,它允许JavaScript在浏览器端直接调用服务器端的Java方法,极大地增强了Web应用的交互性。在这个过程中,我们通常会结合使用FreeMarker或JSP作为视...

    dwr实现的无刷新技术 dwr+jsp

    DWR (Direct Web Remoting) 是一种开源JavaScript库,它允许Web应用程序在客户端与服务器之间进行实时、异步的数据交换,从而实现页面无刷新的技术。DWR使得开发者能够轻松地在浏览器端调用服务器端的Java方法,就像...

    dwr入门简单实现示例

    3. **运行时**:客户端通过JavaScript调用这些接口,DWR引擎接收到请求后,转发到相应的服务器端方法执行,结果再返回给客户端。 **三、DWR的使用步骤** 1. **引入依赖**:在项目中添加DWR相关的JAR文件,或者通过...

Global site tag (gtag.js) - Google Analytics