Для того, чтобы это работало, Javascript должен быть помещен в представление Razor, чтобы строка
@Url.Action("Action","Controller")
анализируется Razor и заменяется реальное значение.
Если вы не хотите перемещать свой Javascript в свой View, вы можете посмотреть на создание объекта настроек в представлении и затем ссылаться на него из вашего файла Javascript.
, например
var MyAppUrlSettings = {
MyUsefulUrl : '@Url.Action("Action","Controller")'
}
и в вашем файле .js
$.ajax({
type: "POST",
url: MyAppUrlSettings.MyUsefulUrl,
data: "{queryString:'" + searchVal + "'}",
contentType: "application/json; charset=utf-8",
dataType: "html",
success: function (data) {
alert("here" + data.d.toString());
});
или, альтернативно, посмотрите на использование встроенных в Ajax методов фреймворка в HtmlHelpers, которые позволяют вам достичь того же, не "загрязняя" ваши Views с помощью кода JS.