我现在就遇到了你说的ajax跨域的问题,我的是一个静态的html的网页,通过js想去请求一个action 或者一个servlet 将值在返回到页面上,由于跨域得不到返回来的值。我看人家例子用jsonp 是这么用吗?想请教一下。。
</p>
<pre><code> var url = "http://192.168.1.181:8080/PisWeb/login!getstr.action";
function callbackFunction(result)
{
var html = '<ul>';
for(var i = 0; i < result.length; i++)
{
html += '<li>' + result[i] + '</li>';
}
html += '</ul>';
document.getElementById('divCustomers').innerHTML = html;
}
function CallJSONPServer(url){ // 调用JSONP服务器,url为请求服务器地址
var oldScript =document.getElementById(url); // 如果页面中注册了调用的服务器,则重新调用
if(oldScript){
oldScript.setAttribute("src",url);
return;
}
var script =document.createElement("script"); // 如果未注册该服务器,则注册并请求之
script.setAttribute("type", "text/javascript");
script.setAttribute("src",url);
script.setAttribute("id", url);
document.appendChild(script);
}
</code></pre>
<p>
这样写可以吗?
这个是我action的方法
public String getstr(){
String str = ":[\"customername1\",\"customername2\"]";
try {
this.getHttpResponse().setCharacterEncoding("UTF-8");
this.getHttpResponse().getWriter().println(str);
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return null;
}