MVC Url.Content with javascript local variable

2019-07-12 08:30发布

问题:

I have problem with this:

var id=5;
var el = $("MainPhotoHolder");
el.attr("src", '@Url.Content("~/Page/GetImage/" + id)');

id is a local javascript variable, but it gives me an error saying that is not in the context. My question is how do i point out that it should be a javascript variable and not a c# one ...?

回答1:

You cannot mix JavaScript and Razor in this way. Razor does not have any reference to it so it cannot use it to generate your link. Try this:

el.attr("src", '@Url.Content("~/Page/GetImage/")' + id);

You might have to use "Url.Action" if you're serving the images from a controller rather than a static repository.