是否可以使用元素上的onclick来更新剃刀变量?
MVC VIEW:
@{
string iconNumber = "1";
}
<button type="submit" onclick="@iconNumber = '2'; alert('@iconNumber');"></button>
控制台错误: 未捕获的ReferenceError:赋值中的左侧无效
感谢
答案 0 :(得分:0)
我无法从您的评论中了解您尝试更新剃刀变量的目的,但如果您真的想要将您的剃刀变量从1更新为2(来自您的问题),那么我建议尝试以下
@{
int iconNumber = 1;
}
然后,
<button type="submit" onclick="@(iconNumber++); alert('@iconNumber');"></button>
希望它有所帮助......但是请注意,iconNumber将在每次单击按钮时递增。所以,如果您展示更多代码,我可以帮助您
答案 1 :(得分:0)
当第二天读到这个问题时,人们会认为我受到毒品的影响。
我想出了一个只使用javascript变量的更好的解决方案:
查看:强>
<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中启动微调器,所以我不必禁用按钮,(微调器不会启动)。