2017-05-24 14 views
0

カスタムJqueryの確認ボックスでサーブレットに値を渡すのは本当に困難です。

グーグルでは、$postを使用してデータをサーブレットに渡すことができますが、何らかの形でデータがサーブレットに渡されていないことがわかりました。

私の必要条件は、openまたはsaveのpdfドキュメントにユーザーに2つのオプションを提供する必要があります。これらのオプションでカスタムJqueryボックスを使用しましたが、データがサーブレットに渡されません。

助けてくださいは、以下の私のコードです:

<%@ 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> 
<link rel="stylesheet" href="https://code.jquery.com/ui/1.11.2/themes/redmond/jquery-ui.css"> 
<script src="https://code.jquery.com/jquery-1.11.2.js"></script> 
<script src="https://code.jquery.com/ui/1.11.2/jquery-ui.js"></script> 
<!-- User Defined Js file --> 
<script type="text/javascript"> 

$(document).ready(function(){ 
      $('#Export').click(function(event) { 
      event.preventDefault(); 
     var currentForm = $(this).closest('form'); 

     var dynamicDialog = $('<div id="conformBox">'+ 
     '<span style="float:left; margin:0 7px 20px 0;">'+ 
     '</span>Open or save the document</div>'); 

     dynamicDialog.dialog({ 
       title : "Open/Save Dialog", 
       closeOnEscape: true, 
       modal : true, 

       buttons : 
         [{ 
           text : "Export", 
           click : function() { 
                     $(this).dialog("close"); 
$.POST({ 
       type: "post", 
       url: "button", 
       data: $('#Export').attr("name"), 
        success: function(data) { 
        $('#results').show(); 
        $('#results').html(data); 
       } 
      }); 
      // currentForm.submit(); // if I use this then control going to servlet but data is not passed without nothing was happening 



           } 
         }, 
         { 
           text : "Open", 
           click : function() { 
             $(this).dialog("close"); 
             currentForm.submit(); 
           } 
         }] 
     }); 
     return false; 
    }); 

}); 

</script> 
</head> 
<body> 
    <form id="god" action="button"> 
     <button type="button" id="Export">Export</button> 
    </form> 
    <div id="results"></div> 
</body> 
</html> 

サーブレットコード:私が間違っているのどこトレースする

<?xml version="1.0" encoding="UTF-8"?> 
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" id="WebApp_ID" version="3.0"> 
    <display-name>Testcase</display-name> 
    <welcome-file-list> 
    <welcome-file>index.html</welcome-file> 
    <welcome-file>index.htm</welcome-file> 
    <welcome-file>index.jsp</welcome-file> 
    <welcome-file>default.html</welcome-file> 
    <welcome-file>default.htm</welcome-file> 
    <welcome-file>default.jsp</welcome-file> 
    </welcome-file-list> 

<!-- <servlet> 
    <servlet-name>button</servlet-name> 
    <servlet-class>com.testcase.testing.button</servlet-class> 
</servlet> 

<servlet-mapping> 
    <servlet-name>button</servlet-name> 
    <url-pattern>/Buttonpage.jsp</url-pattern> 
</servlet-mapping> --> 

</web-app> 

できません

package com.testcase.testing; 

import java.io.IOException; 
import javax.servlet.ServletException; 
import javax.servlet.annotation.WebServlet; 
import javax.servlet.http.HttpServlet; 
import javax.servlet.http.HttpServletRequest; 
import javax.servlet.http.HttpServletResponse; 

/** 
* Servlet implementation class button 
*/ 
@WebServlet("/button") 
public class button extends HttpServlet { 
    private static final long serialVersionUID = 1L; 

    /** 
    * @see HttpServlet#HttpServlet() 
    */ 
    public button() { 
     super(); 
     // TODO Auto-generated constructor stub 
    } 

    /** 
    * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response) 
    */ 
    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { 
     // TODO Auto-generated method stub 
     doPost(request, response); 
     } 

    /** 
    * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response) 
    */ 
    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { 
     // TODO Auto-generated method stub 

     response.getWriter().append(request.getParameter("data")); 
     System.out.println(request.getParameter("data")); 


    } 

} 

web.xmlの

+0

なぜinput = "file"を使用してPDFファイルを開く/保存するのですか? – Keith

+0

@Keith返信ありがとうございます..あなたは 'input = file'の部分について私にもっと教えてください。 – Siva

答えて

1

これは、$ .pを使用してデータを送信する方法ですost

var param = "value"; 
$.post('query.php', { param: param }, function(data) { 
    //do what you want with returned data 
}) 
+0

答えてくれてありがとう...'関数(データ) 'に書くべきものをサーブレットに' value'を渡したいだけです – Siva

+0

返されたデータを扱う関数データでは、あなたの例のように - $( '#results')。 $( '#results')。html(data); –

+0

私はここで試してみましょう。 – Siva

関連する問題