我只想用ajax调用的响应来更新文本框。我收到了回复,并使用
将其分配到文本框document.getElementById("testPad").value = xmlHttpRequest.responseText;
它会更新整个响应文本,恰好是整个HTML页面。
在我发送响应的服务器操作上:
response.setContentType("text/plain");
response.getWriter().write(output);
虽然这听起来微不足道,但我正面临着这样的时间,请各位帮忙。 TIA。
答案 0 :(得分:0)
尝试刷新/关闭流。
response.setContentType("text/plain");
response.getWriter().write(output);
response.getWriter().close();
我建议jQuery.ajax()。下载jQuery.js或只使用CDN网址。
<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.8.0/jquery.min.js"></script>
<script type="text/javascript">
$(function () {
$("#btnSubmit").click(function () {
$.ajax({
url: "serverAction",
success: function (data) {
$("#resultText").val(data);
},
error: function (xhr, status, errorDesc) {
alert(errorDesc);
}
});
});
});
</script>
<div>
<input type="text" id="resultText" />
<input type="button" id="btnSubmit" value="Show" />
</div>
答案 1 :(得分:0)
假设您单击按钮上的文本框和按钮,则必须更新文本框
<input id="txtClicked" type="text" runat="server" />
<input id="buttClicked" type="button" runat="server" />
$("#buttClicked").click(function(){
$.ajax({
type: "POST",
url: "Dashboard.aspx/GetTreeNodesByText", // that's your server side page and the function
data: "{}",
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function (data) {
$("#txtClicked").val(data.d); //data.d is the response from the server
}
});
});
答案 2 :(得分:0)
您需要将responseText字符串解析为HTML DOM,您可以从中轻松检索所需的信息。
此链接可以帮助您入门:
答案 3 :(得分:0)
我通过设置标题属性
来实现它response.setHeader("Cache-Control", "no-cache");
这是一次反复试验仍然不知道它运作的确切原因。
感谢所有投入的人。