-3
我有以下代碼如何將JavaScript中的變量傳遞給C#?
function insertDataToSurface(i) {
$("[name=[" + i + "].Height").val('@Model.Sides.SingleOrDefault(a => a.Name == "А").Surfaces.ElementAt(i))');
}
錯誤
無法解析符號 「I」
我有以下代碼如何將JavaScript中的變量傳遞給C#?
function insertDataToSurface(i) {
$("[name=[" + i + "].Height").val('@Model.Sides.SingleOrDefault(a => a.Name == "А").Surfaces.ElementAt(i))');
}
錯誤
無法解析符號 「I」
要定義JavaScript
函數,它接受一個參數i
,那麼你要使用它在C#代碼@Model.Sides.SingleOrDefault(a => a.Name == "А").Surfaces.ElementAt(i))
。對於後面那段代碼有效,服務器上必須存在i
,而不是作爲客戶端功能的參數。
假設選擇的確需要發生在客戶端上,你有幾個基本選項:
Surfaces
傳達給客戶,並使用i
功能內選擇所需的元素該數據i
作爲URL的參數。
Razor是服務器端代碼 - 它在發送到客戶端之前在服務器上解析。一個JavaScript變量('我')甚至不存在在這一點上。 –
您不能將JavaScript循環變量與剃鬚刀語法混合使用。視圖中的剃鬚刀在頁面發送到客戶端之前進行處理。 Javascript只是處理客戶端(在頁面離開服務器之後)。這就是爲什麼當.NET嘗試渲染視圖時,你會遇到壞符號。 – Tommy