2014-06-25 63 views
0

在javascript js文件中調用Controller的函數。從javascript文件中調用控制器中的函數

我知道有一些與此有關的問題,但我還沒有找到任何合適的問題,所以我想創建這個主題。

我有一個控制器和函數,該函數根據Html文件中的參數輸入返回一個字符串。控制器的

例子:

public class UtilsController : BaseController 
{ 
// 
// GET: /Utils/ 

public string testTranslation(string inputDictKey) 
{ 

    switch (inputDictKey) 
    { 
     case "reference": 
      return "réf"; 
     case "country": 
      return "pays"; 
    } 
    return "test_translation_null"; 
} 


public ActionResult Index() 
{ 
    return View("~/Views/Websites/Index.cshtml"); 
} 

}

,並在HTML文件中,我希望每個HTML文件渲染時間,有一個js函數發送輸入文本的testTranslation控制器MVC,然後返回一個正確的字符串。

<div id="getKeyDict"> 
    <strong> 
     <span id="display_key" data-bind="text:key" /> 
    </strong> 
</div> 

data-bind是將要呈現的值,並且這是我想要發送給Controller的參數。

回答

0
<script> 
    $(function() { 
     var url = "@Url.Action("Utils", "testTranslation")", 
      $displ = $("#display_key"), 
      dataObj = { 
       inputDictKey: $displ.data("bind") 
      }; 
     $.get(url, dataObj, function(result){ 
      $displ.html(result); 
     }); 
    }); 
</script> 
相關問題