Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/73.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 JSON.parse SyntaxError:意外标记?在位置124处使用JSON_Jquery_Html_Json_Ajax - Fatal编程技术网

Jquery JSON.parse SyntaxError:意外标记?在位置124处使用JSON

Jquery JSON.parse SyntaxError:意外标记?在位置124处使用JSON,jquery,html,json,ajax,Jquery,Html,Json,Ajax,我正在尝试使用$.ajax()动态地重新加载元素的选项列表。响应主体由两个字段组成:下拉HTML和选项数,如下所示: 然后,我只需将HTML插入元素: success: function (response) { $("#cmbComplianceUser").html(response.data); } 当选项列表不包含任何特殊字符时,它工作正常。但当它这样做时,例如: <option value='845'>Amanda_~!@#$%^

我正在尝试使用$.ajax()动态地重新加载元素的选项列表。响应主体由两个字段组成:下拉HTML和选项数,如下所示:

然后,我只需将HTML插入元素:

success: function (response) {
                    $("#cmbComplianceUser").html(response.data);
}
当选项列表不包含任何特殊字符时,它工作正常。但当它这样做时,例如:

<option value='845'>Amanda_~!@#$%^&*&#40;&#41;_+{}[]|?/:; Kildee_~!@#$%^&*&#40;&#41;_+{}[]|?/:;</option>
Amanda~!@$%^&*()_+{}[]|?/:; 基尔迪~!@$%^&*()_+{}[]|?/:;
我得到以下错误:


我应该怎么做才能正确地解析html内容而不出现任何错误,为什么它不解析“?”符号呢?

我自己就已经解决了这个问题。我试图使用JSON格式,但没有将输出字符串正确解析为JSON。在服务器上添加了toJSON()解析函数:

Response.ContentType = "application/json"
Response.Write  "{ ""data"": " & toJSON(dropdownHtml) & ", ""total"": " & userCount & " }"

Ur JSON数据在序列化时损坏。这并不是说JSON.parse()无法解析“?”。问题在于此符号正在扭曲JSON的格式。