C# MVC TempData传递到Jquery
我正在尝试将HTML分配给TempData,如下所示:C# MVC TempData传递到Jquery,c#,asp.net-mvc,C#,Asp.net Mvc,我正在尝试将HTML分配给TempData,如下所示: TempData["FilesUploaded"] = "<option value= '" + file.FileName + "'>" + file.FileName + "</option>"; 我发现这些角色是这样出现的: <option value= 'PS Report #36178.pdf'>PS Report #3617
TempData["FilesUploaded"] = "<option value= '" + file.FileName + "'>" + file.FileName + "</option>";
我发现这些角色是这样出现的:
<option value= 'PS Report #36178.pdf'>PS Report #36178.pdf</option>
我试图在@Html.Raw(…中包含TempData,但效果不太好
以下是我尝试过的:
var val = '@Html.Raw((string)TempData["FilesUploaded"])';
alert(val);
奇怪的是,它不工作,因为警报甚至没有出现。用于将字符串编码为JavaScript:
var val = '@Html.Raw(HttpUtility.JavaScriptStringEncode((string)TempData["FilesUploaded"]))';
现在我读了最后一行。你能用
Html.Raw
发布你的版本吗?@NatePat OK现在我意识到了这个问题。Html.Raw
输出了单引号,这使得脚本无效。为了使输出有效,单引号必须替换为\
var val = '@Html.Raw(HttpUtility.JavaScriptStringEncode((string)TempData["FilesUploaded"]))';