[英]Passing Variable from Razor to Javascript
因此,我在控制器中有一個對象列表,並且我想有一個按鈕來啟動一個彈出窗口,該窗口與列表中的每個對象相關聯。 我認為這需要通過Javascript完成,並確定要顯示哪個窗口,我需要將ID參數(對象的屬性之一)傳遞給javascript。 我目前有以下代碼:
@Html.BeginForm()
{
@for (int i = 0; i < Model.Count(); i++)
{
var theId = Model[i].CW_Id;
<tr>
<td>
<input type="button" id="btnpopup" value="Details" onclick="ShowModelPopUp()" data="theId" />
</td>
@Html.EditorFor(m => Model[i], "CWinline") //Compiles the list using Editor Template
</tr>
}
</table>
<input type="submit" value="Save" class="btn btn-default" />
}
<script type="text/javascript">
ShowModelPopUp = function () {
var theId = $(this).data();
window.showModalDialog('/Default/Selected/?id='+theId, "WindowPopup", 'width=200,height=500');
}
</script>
某種程度上,變量傳遞不正確。 有人知道哪里出了問題嗎?
這個:
<input
type="button" id="btnpopup"
value="Details"
onclick="ShowModelPopUp()"
data="theId" />
...會將字符串“ theId”放入屬性。 你要這個:
<input
type="button" id="btnpopup"
value="Details"
onclick="ShowModelPopUp()"
data="@theId" />
@
將讓剃刀模板引擎知道切換到輸出.NET值。
嘗試
<input type="button" id="btnpopup" value="Details" onclick="ShowModelPopUp()" data="@Model.id_attribute" />
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.