Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/81.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
如何从javascript文件中点击控制器操作方法_Javascript_Jquery_Asp.net Mvc_Knockout.js - Fatal编程技术网

如何从javascript文件中点击控制器操作方法

如何从javascript文件中点击控制器操作方法,javascript,jquery,asp.net-mvc,knockout.js,Javascript,Jquery,Asp.net Mvc,Knockout.js,这是我试图从包含敲除相关函数的.js文件中点击的url: self.followAction = $.resolvePath("/People/Follow?uid=" + data.UserId); 这里的人是控制器,下面是操作方法,点击按钮,我想发送userId,所以我写了这个 为了从javascript中解析相对路径,我编写了这个函数 // Fix for resolving relative paths from within js scripts $.resolvePath =

这是我试图从包含敲除相关函数的.js文件中点击的url:

 self.followAction = $.resolvePath("/People/Follow?uid=" + data.UserId);
这里的人是控制器,下面是操作方法,点击按钮,我想发送userId,所以我写了这个

为了从javascript中解析相对路径,我编写了这个函数

// Fix for resolving relative paths from within js scripts
 $.resolvePath = function(url)
 {
  var path = '@Request.ApplicationPath';
  if (path != '/') return path + url;
  return url;
  };
但是,在点击按钮时,我得到了这个错误:HTTP错误404.0-找不到 网址是:

 localhost:44305/People/@Request.ApplicationPath/People/Follow?uid=8

请告诉我我现在应该试试什么。提前通知

Razor代码不在JS文件中解释,因此
@Request.ApplicationPath
被读取为文本字符串。您需要将代码放在执行它的地方,以便JS可以读取它;可能作为视图中某个元素的
data-*
属性,如下所示:


$.resolvePath=函数(url){
变量路径=$('body')。数据('app-path');
如果(路径!=“/”)
返回路径+url;
返回url;
};

Razor代码不会在JS文件中解释,因此
@Request.ApplicationPath
被读取为文本字符串。您需要将代码放在执行它的地方,以便JS可以读取它;可能作为视图中某个元素的
data-*
属性,如下所示:


$.resolvePath=函数(url){
变量路径=$('body')。数据('app-path');
如果(路径!=“/”)
返回路径+url;
返回url;
};

Razor代码不在JS文件中解释,因此
@Request.ApplicationPath
被读取为文本字符串。您需要将代码放在执行它的地方,以便JS可以读取它;作为视图中某个元素的
data-*
属性,例如。okk thnk您得到了@rorymcrossanglad的帮助。我添加它是为了回答您的问题。我的问题仍然没有解决。请有人帮助我@RoryMcCrossanRazor代码在JS文件中没有解释,因此
@Request.ApplicationPath
被读取为文本字符串。您需要将代码放在执行它的地方,以便JS可以读取它;作为视图中某个元素的
data-*
属性,例如。okk thnk您得到了@rorymcrossanglad的帮助。我添加了它作为对你的回答我的问题仍然没有解决请有人帮助我@Rorymcrossani不知道你可以这样做。谢谢!我试着将代码放在部分视图中,并直接在视图页面上调用该部分视图,但它仍然是说$。resolvepath不是一个函数,在您的回答中,什么是数据应用程序路径以及在布局中放置代码的位置我想应该放在标题部分@Rory McCrossanIt不起作用我不知道为什么应该这样做您可能会这样做最好开始一个关于它的新问题,包括输出的实际HTML和
@Request.ApplicationPath
的值。我不知道你可以这样做。谢谢!我试着将代码放在部分视图中,并直接在视图页面上调用该部分视图,但它仍然是说$。resolvepath不是一个函数,在您的回答中,什么是数据应用程序路径以及在布局中放置代码的位置我想应该放在标题部分@Rory McCrossanIt不起作用我不知道为什么应该这样做您可能会这样做最好开始一个关于它的新问题,包括输出的实际HTML和
@Request.ApplicationPath