2016-11-24 149 views
0

我想通過angularjs將路徑url作爲參數傳遞給我的asp.net mvc控制器方法。 當我調試時,我發現代碼中的Path參數缺少斜槓。AngularJs傳遞url作爲參數

等代替 「d:\ MYDIR \ LIST.TXT」 它顯示 「d:MyDirList.txt」

我如何能夠通過URL作爲參數的角度?

public JsonResult GetData(string Path) 
     {   

      var details = GetResult(Path); 
      return Json(details, JsonRequestBehavior.AllowGet); 
     } 

VAR ListPath = 「d:\ MYDIR \ LIST.TXT」;

$http.get("/Home/GetData", 
    { params: { "Path": ListPath }) 
    .then(function (response) { 
     console.log(response); 

    }); 
+0

我認爲在發送之前,你應該使用編碼encodeURIComponent方法() –

+0

這個路徑,請看看例子http://stackoverflow.com/questions/16630471/how-can-i-invoke-encodeuricomponent-from-angularjs-template –

回答

1

當你用大多數語言聲明它們時,你需要避開你的斜槓。

var ListPath = "D:\\MyDir\\List.txt";

+0

但是當我們從文本框拉出路徑時,我們無法得到這個\\。我們該如何處理? – Kurkula

+0

如果它從文本框傳遞,那麼它已經正確處理,只是通過該變量將沒事。 – Icycool

1

只是編碼您ListPath變種這樣

var ListPath = window.encodeURIComponent("D:\MyDir\List.txt");