Asp.net mvc 不使用asp.net mvc分配变量
这是我的视图代码的一部分:Asp.net mvc 不使用asp.net mvc分配变量,asp.net-mvc,Asp.net Mvc,这是我的视图代码的一部分: <%int imageTypSelected = 0; %> <div class="imageToEdit" > <img src='<%: Url.Action("getImg", "Product", new{ShopId = Model.Id}) %>' alt="" /> <a href="#" id="1" onclick="jQuery('#dialo
<%int imageTypSelected = 0; %>
<div class="imageToEdit" >
<img src='<%: Url.Action("getImg", "Product", new{ShopId = Model.Id}) %>' alt="" />
<a href="#" id="1" onclick="jQuery('#dialog').dialog('open'); '<%:imageTypSelected=1 %>'; return false; ">G</a>
</div>
<div >
<img src='<%: Url.Action("getImg_Alt1", "Product", new{ShopId = Model.Id}) %>' alt="" />
<a href="#" id="2" onclick="jQuery('#dialog').dialog('open'); '<%:imageTypSelected=2 %>'; return false; " >G</a>
</div>
<div >
<img src='<%: Url.Action("getImg_Alt2", "Product", new{ShopId = Model.Id}) %>' alt="" />
<a href="#" id="3" onclick="jQuery('#dialog').dialog('open'); '<%:imageTypSelected=3 %>'; return false; ">G</a>
</div>
<div id="dialog" title="A" >
<% using (Html.BeginForm("changeProductImage", "Product", new { @Id = Model.Id, @selectedHyperLink = imageTypSelected }, FormMethod.Post, new { enctype = "multipart/form-data" }))
{%>
<p><input type="file" id="fileUpload" name="fileUpload" style="width:23;"/> </p>
<p><input type="submit" value="B" /></p>
<% } %>
</div>
“alt=”“/>
“alt=”“/>
“alt=”“/>
首先单击变量
imageTypSelected
必须设置为1。通过第二个必须设置为3,通过单击第三个必须设置为3。然后,该变量将发布到控制器中的方法。但一直以来,只有值3
被分配给变量,单击其他不会对变量产生影响。怎么了?您把服务器端代码和客户端代码弄混了
imagetypeselected
仅存在于服务器上。当您在浏览器中单击链接时,它不会被更改。您需要完全在javascript中执行此操作:
从表单中删除此项:
@selectedHyperLink = imageTypSelected
并添加此隐藏字段:
<input type="hidden" id="selectedhyperlink" name="selectedhyperlink" />
添加此javascript函数,将隐藏字段设置为正确的值:
<script type="text/javascript">
function changeImageType(imageType) {
jQuery("#selectedhyperlink").val(imageType);
jQuery("#dialog").dialog("open");
return false;
}
</script>
函数changeImageType(imageType){
jQuery(“#selectedhyperlink”).val(imageType);
jQuery(“对话框”).dialog(“打开”);
返回false;
}
从链接调用此函数:
<a href="#" id="2" onclick="return changeImageType(2);">G</a>