如何使用html代码设置输入

时间:2016-05-25 10:53:17

标签: javascript html ajax forms rest

我无法理解为什么这不起作用。

我的网站输入了一个由ajax请求填充的内容。

我想用htmlCode填充它,但尝试时它是空的。

<form name="form" id="form" method="post" action="secondpage" />
    <input type="hidden" name="htmlCode" id="htmlCode"/>  
</form>


$.ajax({
    url : url,
    type: "POST",
    async: true,
    data : {
        "requestData": JSON.stringify(request) 
    },
    success: function(data, textStatus, jqXHR){ 
        var response = data.methodResult;
        alert(response.htmlCode);
        document.getElementById("htmlCode").value = response.htmlCode;
    },
    error: function (jqXHR, textStatus, errorThrown) {

    } 
});    

警报显示htmlCode,所以,我确定它存在。

我在jsp中读取变量:

System.out.println("htmlCode Value - " + request.getParameter(htmlCode));

这是空的。

如果我更改了REST服务器,并返回&#34;你好&#34;它被填充而不是htmlCode。

我试图设置什么禁止的角色?

我得到了解决方案,我应该将UTF-8编码为html文本

2 个答案:

答案 0 :(得分:1)

使用JSON.stringify时是否有效?

document.getElementById("htmlCode").value = JSON.stringify(response.htmlCode);

文档:https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/JSON/stringify

答案 1 :(得分:-1)

试试这个

$.ajax({
    url : url,
    type: "POST",
    async: true,
    data : {
       "requestData": JSON.stringify(request) 
    },
    success: function(data, textStatus, jqXHR){ 
        document.getElementById("htmlCode").value = data;
    },
    error: function (jqXHR, textStatus, errorThrown) {} 
});