【发布时间】:2013-01-24 14:03:04
【问题描述】:
我正在用 ajax 编写一个 MVC3 应用程序,我遇到了一个情况。
仅当条件为真时,我才必须显示 na 按钮。好的,这很容易做到。
@if (Model.AAA == ENUM.AAA)
{
<button>OK</button>
}
但是这个按钮会调用一个ajax函数。
现在我的疑问是,我的 AJAX 代码放在哪里?
如果我这样做:
@if (Model.AAA == ENUM.AAA)
{
function OK(){
$.ajax({});
}
<button>OK</button>
}
这听起来很丑陋的代码!!! 可以看出代码位置不对,但ajax代码是“安全的”,我的意思是,只有按钮存在时,ajax代码才会存在。
但如果我将代码放在 head 部分,高级用户将能够调用 ajax 函数。
或者如果创建一个@if 子句来包含脚本,我将复制这样的代码
<head type="text/javascript">
@if (Model.AAA == ENUM.AAA){
function OK(){
$.ajax({});
}
}
</head>
....
<body>
....
@if (Model.AAA == ENUM.AAA)
{
<button onclick="OK()">OK</button>
}
....
</body>
那么,面对这种情况的最佳做法是什么,最好的方法是什么?
【问题讨论】:
标签: c# .net asp.net-mvc asp.net-mvc-3 razor