0
我有這樣的MVC代碼,並希望通過模型值@conversionModel.SourceFileName
不幸的是,這段代碼實際上並沒有執行,什麼正確的Razor語法將在我的情況?Razor的語法,代碼沒有在AjaxOptions中執行OnComplete
@Ajax.ActionLink("Remove file", "RemoveFile", "Converter",
new { id = @conversionModel.ProcessId },
new AjaxOptions {
OnComplete = "RemoveFile(@conversionModel.SourceFileName);"
})
-1,如果路徑中包含\字符,這對路徑來說很可能會發生什麼?這將打破JavaScript。將字符串傳遞給javascript函數的唯一可靠方法實際上是JSON對它們進行編碼。 – 2012-03-12 08:24:29
@DarinDimitrov感謝我的解決方案downvoting,因爲它不包括任何可能性*沒有*在OP的問題中提到。是否編碼字符串從來沒有在這裏問過。它*值得注意(我相應地更新了我的答案)。但實際上*降低了我的解決方案,解決OP的最初問題是相當有問題的。 – 2012-03-12 08:33:52
OP的原始問題是'RemoveFile' JavaScript從未被執行。它從來沒有執行,因爲他沒有正確地編碼作爲參數傳遞的字符串,他得到了一個JavaScript錯誤。用你的初始解決方案,它是一樣的:參數編碼不正確。現在你已經修復了你的答案,我除去了我的downvote,只是現在你的答案看起來和我的一樣。 – 2012-03-12 09:56:23