Javascript 打开一个包含我的字符串内容的简单弹出窗口

Javascript 打开一个包含我的字符串内容的简单弹出窗口,javascript,jquery,Javascript,Jquery,我使用jQueryGetJSON方法从Javaservlet获取两个字符串。一个字符串包含数据类型,如简单字符串、XML和HTML,另一个字符串包含数据。我需要打开一个弹出窗口,根据内容大小不同 下面是用于获取字符串的代码 <%@ page language="java" contentType="text/html; charset=ISO-8859-1" pageEncoding="ISO-8859-1"%> <!DOCTYPE html PUBLIC "-//W3C//D

我使用jQueryGetJSON方法从Javaservlet获取两个字符串。一个字符串包含数据类型,如简单字符串、XML和HTML,另一个字符串包含数据。我需要打开一个弹出窗口,根据内容大小不同

下面是用于获取字符串的代码

<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>AJAX calls using Jquery in Servlet</title>
 <script src="http://code.jquery.com/jquery-latest.js"> </script>
 <script src="https://code.jquery.com/jquery-1.10.2.js"></script>
 <script src="https://code.jquery.com/ui/1.10.4/jquery-ui.js"></script>       

        <script> 
            $(document).ready(function() {                        

                $('#submit').click(function(event) {  

                    var applid=$('#applicationid').val();
                    var applname=$('#appname').val();

                 $.getJSON('ActionServlet',
                         {
                     appid:applid,
                     appname:applname
                     },function(data) { 
                        var errortype = data.errortype;
                        var errorMsg = data.errorMsg;                            
                     }); 
                }); 
            });

        </script>
</head>
<body>
    <form id="form1">

<h1>AJAX Demo using Jquery in JSP and Servlet</h1>

Enter your Name:

<input type="text" id="applicationid"/>
<input type="text" id="appname"/>
<input type="button" id="submit" value="Ajax Submit"/>

<br/>
<div id="hello" title="Hello  World!"></div> 
</form>

</body>
</html>

在Servlet中使用Jquery的AJAX调用
$(文档).ready(函数(){
$(“#提交”)。单击(函数(事件){
var applid=$('#applicationid').val();
var applname=$('#appname').val();
$.getJSON('ActionServlet',
{
appid:applid,
appname:applname
},函数(数据){
var errortype=data.errortype;
var errorMsg=data.errorMsg;
}); 
}); 
});
在JSP和Servlet中使用Jquery的AJAX演示
输入您的姓名:


您可以使用fancybox。它提供了打开传递的html字符串的选项要打开新窗口,可以使用window.open()函数

要将XML显示为原始文本,需要转义特殊字符。 Javascript没有内置函数(如php中的htmlentities()

您可以尝试以下代码:

function htmlentities(str)
{
    return String(str).replace(/&/g, '&amp;').replace(/</g, '&lt;').replace(/>/g, '&gt;').replace(/"/g, '&quot;');
}
函数属性(str)
{
返回字符串(str).replace(//&/g,“&;”).replace(//g,”).replace(//“/g,”);
}

不太清楚您想做什么。通常,您有用于打开不同弹出窗口的
window.open()
window.alert()
函数。是的。。我包括了window.openwithdocument.write(errorMsg)和它笔下的简单字符串和HTML内容,没有任何问题,但变量包含XML整个XML没有显示在弹出窗口中。是否有任何方法可以在弹出窗口的主体中包含XML数据。是否要查看带有标记的XML,而不是解析它?在这种情况下,您需要
escape()
您的XML。谢谢..escape()正在工作,但它显示为原始XML,如“%3Csoapenv%3aevelope%20xmlns%3Asoapenv%3D%22http%”。我想我需要在不从servlet转换的情况下发送,或者在javascript中有什么方法可以做到?你是对的
escape()
不是正确的函数。我在下面补充了一个答案。