使用onclick元素更新剃刀变量是否可能?使用onclick元素更新剃刀变量
MVC视图:
@{
string iconNumber = "1";
}
<button type="submit" onclick="@iconNumber = '2'; alert('@iconNumber');"></button>
控制台错误: 未捕获的ReferenceError:在分配无效的左侧
谢谢
使用onclick元素更新剃刀变量是否可能?使用onclick元素更新剃刀变量
MVC视图:
@{
string iconNumber = "1";
}
<button type="submit" onclick="@iconNumber = '2'; alert('@iconNumber');"></button>
控制台错误: 未捕获的ReferenceError:在分配无效的左侧
谢谢
在第二天读这个问题时,人们会认为我是在毒品的影响下。
我想出了一个更好的解决办法,只有使用JavaScript变量:
VIEW:
<script>var iconNumber = 0;</script>
@using (Ajax.BeginForm("", "",
new AjaxOptions
{
OnBegin = "$('#iconElement' + iconNumber).attr('class', 'fa fa-spinner fa-spin');",
HttpMethod = "POST"
}))
{
Html input here
<button type="submit" class="btn btn-danger" id="IconElement1" onclick="iconNumber = 1;">
<button type="submit" class="btn btn-danger" id="IconElement2" onclick="iconNumber = 2;">
<button type="submit" class="btn btn-danger" id="IconElement3" onclick="iconNumber = 3;">
}
我现在可以禁用表单提交后,防止多个请求。因为我不直接在onclick中启动微调器,所以我不必禁用按钮,(微调不会启动)。
我无法从理解你的意见,你试图更新剃刀变量的目的是什么,但如果你是真的LY想你的剃须刀变量更新1到2(从你的问题),那么我会建议尝试像下面
@{
int iconNumber = 1;
}
然后,
<button type="submit" onclick="@(iconNumber++); alert('@iconNumber');"></button>
希望它可以帮助...还要注意那iconNumber将每增加一次点击按钮。所以,我可以帮助你,如果你展示更多的代码
是否有任何理由变量需要是一个剃刀变量?你通常不会实现这样的工作流程......你最终的目标是什么?你想发送一些价值回到服务器?检索一个服务器的值,然后在客户端上操作它? – tintyethan 2014-10-07 14:23:31
我想在我的ajax.beginform中使用该变量,onbegin,所以我可以设置应该在开始时隐藏哪个图标。我有三个相同表单的提交按钮。按下(提交)的按钮应该隐藏。我不能简单地将它隐藏在onclick中,因为我正在使用jquery验证,如果表单没有在我的oncomplete函数中结束,我不想隐藏它。哇,希望我现在不会混淆你太多。 – Reft 2014-10-07 14:29:19
错误分配中无效的左侧,因为你试图给一个常量赋值意味着'1'='2' – SDK 2014-10-07 15:31:53