Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/vb.net/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery 确保web api控制器返回有效的HTML_Jquery_Vb.net_Asp.net Web Api2_Asp.net Ajax - Fatal编程技术网

Jquery 确保web api控制器返回有效的HTML

Jquery 确保web api控制器返回有效的HTML,jquery,vb.net,asp.net-web-api2,asp.net-ajax,Jquery,Vb.net,Asp.net Web Api2,Asp.net Ajax,我认为我的WebAPI2控制器正在返回JSON或某种类型的XML。我已经调试了我的游戏并逐步完成了程序,在VisualStudio中一切看起来都很好 但是,当我的ajax方法通过控制器获取数据时,除了一组额外的引号外,每个引号前面都有一个斜杠,如下所示: <img id="\"12345\"" title="\"monster1\"" src="\"https://xxx.cloudfront.net/bucket/monster1.jpg\"" width="\"200\"" he

我认为我的WebAPI2控制器正在返回JSON或某种类型的XML。我已经调试了我的游戏并逐步完成了程序,在VisualStudio中一切看起来都很好

但是,当我的ajax方法通过控制器获取数据时,除了一组额外的引号外,每个引号前面都有一个斜杠,如下所示:

 <img id="\"12345\"" title="\"monster1\""
 src="\"https://xxx.cloudfront.net/bucket/monster1.jpg\"" width="\"200\""
 height="\"200\"" />
在我的页面中,我的ajax函数使用:

<script>
$(document).ready(function () {

    $.ajax({
        url: '/api/monsterPhoto/' + monsterID,
        method: 'GET',
        dataType: 'html',
        success: function (data) {
            $("#monster").html(data);
        },
        fail: function (jqXHR, textStatus) {
            alert("Request failed: " + textStatus);
        }
    });
});

$(文档).ready(函数(){
$.ajax({
url:'/api/monsterPhoto/'+monsterID,
方法:“GET”,
数据类型:“html”,
成功:功能(数据){
$(“#怪物”).html(数据);
},
失败:函数(jqXHR,textStatus){
警报(“请求失败:+textStatus”);
}
});
});

所以我的问题是,如何防止我的控制器像那样转义引号并返回有效的html


谢谢

字符串中的双引号正在被转义,尽管它不应该引起问题:@rorymcrossan抱歉,它在斜杠之外添加了一个额外的引号。我已经更新了我的问题。谢谢您遇到问题是因为在看到此行为时?URL使用
HttpUtility.URLEncode
方法对html进行编码。当您在回调中得到它时,使用Javascript中的
decodeURIComponent
方法对其进行解码。没有编码就无法发送HTML。@trevster344谢谢,这很有效。
    Public Function GetValue(ByVal id As String) As String
        Dim monsterFactory As New MonsterFactory
        Return monsterFactory.returnMonsterImageTag(id)
    End Function
<script>
$(document).ready(function () {

    $.ajax({
        url: '/api/monsterPhoto/' + monsterID,
        method: 'GET',
        dataType: 'html',
        success: function (data) {
            $("#monster").html(data);
        },
        fail: function (jqXHR, textStatus) {
            alert("Request failed: " + textStatus);
        }
    });
});