JavaScript에서 JSP로 값을 보내기 (jQuery 포함)
-
03-07-2019 - |
문제
지금은 일부 항목을 정렬 할 수있는 JSP 페이지가 있습니다. 준비가되었고 링크가 javaScript 함수를 클릭하면 모든 정보를 XML로 변환합니다 (변수의 텍스트). 다시, 나는 정보를 숨겨진 입력에 넣고 양식을 제출하여 $ .post와 몇 가지 jQuery 함수로 전송했지만 아무것도 작동하지 않았습니다. 어떤 아이디어?
내 JSP에서 다음과 같은 게시물을 읽는다.
<% out.println(request.getParameter("data")); %>
작동하지 않습니다.
xml = "<xml></xml>";
$("#form").submit(function(){
alert("JS: " + $("#data").text());
$("#data").text(xml);
});
이것도 :
xml = "<xml></xml>";
$("#data").text(xml);
$("#form").submit();
.Text를 .html로 대체하는 것은 작동하지 않습니다
모든 아이디어를 환영합니다, thx
해결책
당신은 아마도 여기서 잘못된 길을 가고있을 것입니다. 당신은 HTML 코드를 제공하지 않았지만 다음과 같습니다.
<form method="POST" id="form">
<input type="hidden" id="data" />
</form>
그것이 맞다면, 당신은 말해야합니다 $("#data").val(xml);
대신에 text()
또는 html()
그 변화에 따라 일치하는 것은 텍스트 또는 HTML로 제공합니다. 이것은 현재 솔루션에서 작동해야합니다.
또한 jQuery를 보겠다고 제안했습니다 $.post()
그리고 이것이 백엔드에서 원하는 것이 아니라면 XML로 모든 것을 포장하는 대안으로서 다른 사람들. 일부 이름으로 키워진 모든 값으로 JavaScript 객체를 구성하고 jQuery의 하나에 전달하는 것이 더 쉬울 수 있습니다. $.post(), $.get()
, 다음과 같이 :
var values = {name: "John", surname: "Doe"};
values.age = 25;
$.post("index.jsp", values); // this will result in a post with 3 variables: name, surname, age
실제로 XML을 이런 식으로 보낼 수 있기 때문에 지금은 나에게 발생했습니다 (일을하는 방식을 선호하지 않는 한).
$.post("index.jsp", {data: "<xml><whatever-else-needs-to-be-in-here/></xml>"});
당신은 여기에서 더 많은 것을 깨우 치고 싶을 것입니다. ajax @ jQuery 문서
다른 팁
사용하려고합니다 jQuery ajax API-이를 사용하여 Get 또는 Post를 통해 임의의 데이터를 보낼 수 있으며 숨겨진 양식이나 다른 것을 설정할 필요가 없습니다.
항상 xmlhttprequest를 사용하여 데이터를 전송할 수 있습니다. 이것은 양식 제출 버튼과 같은 요소에서 사용자 상호 작용없이 우리가 수행 할 수 있습니다. JQuery는 이러한 요청을 지원하기위한 기능을 갖추고 있습니다.