Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/422.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
Java Div标签不';没有任何结果_Java_Javascript_Ajax_Jsp - Fatal编程技术网

Java Div标签不';没有任何结果

Java Div标签不';没有任何结果,java,javascript,ajax,jsp,Java,Javascript,Ajax,Jsp,在我的代码中,在使用AJAX调用向JSP页面发送请求后,它不会在标记中显示结果。我的标记的Id是“div1”。控件被传递到JSP页面。处理JSP页面后,responseText中的值不会显示在标记中。我不明白原因。我在此附上代码。。。我还可以向“new.jsp”文件上的标记添加事件吗 无标题文件 尝试 { 函数创建(str) { var xmlHttp xmlHttp=CreateXmlHttpObject() if(xmlHttp==null) { 警报(“浏览器不支持HTTP请求”) 返

在我的代码中,在使用AJAX调用向JSP页面发送请求后,它不会在
标记中显示结果。我的
标记的Id是“div1”。控件被传递到JSP页面。处理JSP页面后,
responseText
中的值不会显示在
标记中。我不明白原因。我在此附上代码。。。我还可以向“new.jsp”文件上的标记添加事件吗


无标题文件
尝试
{
函数创建(str)
{ 
var xmlHttp
xmlHttp=CreateXmlHttpObject()
if(xmlHttp==null)
{
警报(“浏览器不支持HTTP请求”)
返回
} 
var url=“new.jsp”
url=url+“?dbname=“+str”
url=url+“&sid=“+Math.random()
//打印输出(url)
xmlHttp.onreadystatechange=stateChanged
open(“GET”,url,true)
xmlHttp.send()
}
函数stateChanged()
{ 
if(xmlHttp.readyState==4 | | xmlHttp.readyState==complete)
{ 
document.getElementById(“div1”).innerHTML=xmlHttp.responseText
} 
} 
函数CreateXmlHttpObject()
{ 
var objXMLHttp=null
if(window.XMLHttpRequest)
{
objXMLHttp=newxmlhttprequest()
}
else if(window.ActiveXObject)
{
objXMLHttp=新的ActiveXObject(“Microsoft.XMLHTTP”)
}
返回objXMLHttp
}
}
捕捉(错误)
{}
数据库

数据库名称

ffff

new.jsp

<%-- 
Document   : new
Created on : Nov 11, 2014, 12:41:34 PM
Author     : user
--%>

  <%@page import="java.sql.PreparedStatement"%>
  <%@page import="java.sql.DriverManager"%>
 <%@page import="java.sql.Connection"%>

    <%@page import="querywork.DBConnection"%>
   <%@page import="javax.faces.component.behavior.AjaxBehavior"%>
     <%@page contentType="text/html" pageEncoding="UTF-8"%>
   <!DOCTYPE html>

  <%
try {
    String responseText = new String("");
    boolean flg = false;
    String OptionValue = (String) request.getParameter("dbname");


    Class.forName("com.mysql.jdbc.Driver").newInstance();
    Connection conn = DriverManager.getConnection("jdbc:mysql://localhost/", "root", "");
    PreparedStatement ps = conn.prepareStatement("create database " + OptionValue);
    int k = ps.executeUpdate();
    if (k > 0) {
        flg = true;
    } else {
        flg = false;
    }

    responseText += OptionValue;

} catch (Exception e) {
    out.print(e);
}
 %>

0) {
flg=真;
}否则{
flg=假;
}
responseText+=选项值;
}捕获(例外e){
打印(e);
}
%>

这些是我发现的问题:

问题1 您正在创建一个
responseText
字符串,但没有将其写入输出流,因此它不会出现在发送回客户端的响应中

块的末尾(在
new.jsp
中),在执行

responseText += OptionValue;
您需要添加

out.print(responseText);
问题2 您的按钮类型为
submit
,因此它会提交表单。这意味着调用AJAX请求后,页面将立即重新加载。将
returnfalse
添加到
onclick
处理程序中,如下所示:

<input type="submit" name="Submit" value="CREATE"
    onclick="create(textfield.value); return false;"/>
问题3
您需要在
create
方法之外声明
var xmlHttp
。现在,你的
stateChanged()
方法无法访问你的
xmlHttp
变量。

控制台显示了什么?控制台没有显示任何已添加的结果。在try块末尾打印(responseText)。但它不起作用:(我对web应用程序不熟悉,所以我不理解这个问题。你能用一个例子解释我吗?
<input type="submit" name="Submit" value="CREATE"
    onclick="create(textfield.value); return false;"/>
<input type="button" name="Submit" value="CREATE"
    onclick="create(textfield.value)"/>