Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/470.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
MVC3从Javascript调用控制器方法_Javascript_Asp.net Mvc 3 - Fatal编程技术网

MVC3从Javascript调用控制器方法

MVC3从Javascript调用控制器方法,javascript,asp.net-mvc-3,Javascript,Asp.net Mvc 3,在MVC3中。我有一个按钮类“open deleteRowDialog”,当我点击它时,它会转到以下javascript: $(document).on("click", ".open-DeleteRowDialog", function () { var pwd= '@Url.("GeneratePsw","Admin")'; $(".modal-body #pwd").val(pwd); $('#1').modal('show');

在MVC3中。我有一个按钮类“open deleteRowDialog”,当我点击它时,它会转到以下javascript:

 $(document).on("click", ".open-DeleteRowDialog", function () { 
         var pwd= '@Url.("GeneratePsw","Admin")';
         $(".modal-body #pwd").val(pwd);
        $('#1').modal('show');

})
我想要的是调用一个方法(在控制器中),该方法必须返回一个字符串,这就是我想要保存在“var pwd”中以在模型(视图)中显示的内容

方法(在控制器中)为:


谢谢大家!

对控制器操作方法进行ajax调用。您可以使用
$。获取
方法,如下所示

$(function(){
   $(document).on("click", ".open-DeleteRowDialog", function () { 
      var pwd="";
       $.get("@Url.Action("Yourcontroller","GeneratePsw")",function(data){
           pwd=data;
           //now do whatever you want with pwd variable;
       });    
    })
 });
是HTTP GET类型的
$.ajax
方法的缩写形式

如果在响应中遇到类似缓存数据的问题,可以在
get
调用中添加唯一的时间戳,这样就不会得到缓存结果。你可以使用这个方法


另一种方法是在方法中将缓存属性值设置为false。但这将适用于所有ajax调用。

使用jQuery ajax并直接作为url调用控制器方法

$(document).on("click", ".open-DeleteRowDialog", function () { 
    var pwd="";
    $.get('Yourcontroller/GeneratePsw', function(data){
        pwd=data;
        //now do whatever you want with pwd variable;
    });    
})

你需要使用AJAX。你能用AJAX写一些例子吗??非常感谢。
 $.get("@Url.Action("Yourcontroller","GeneratePsw")?"+$.now(),function(data){
    // to do : do something with result
 });
$(document).on("click", ".open-DeleteRowDialog", function () { 
    var pwd="";
    $.get('Yourcontroller/GeneratePsw', function(data){
        pwd=data;
        //now do whatever you want with pwd variable;
    });    
})