这是我的场景。我正在使用 iframe 创建图像上传。情况是这样的,如果有人将鼠标悬停在该 iframe 上,则会在其上打开另一个具有两个按钮的 div。一个按钮是选择另一个图像,另一个按钮是清除 iframe 中存在的图像。
这是视图的代码:
@using (Html.BeginForm("Index", "LandingSetting", FormMethod.Post, new { enctype = "multipart/form-data" }))
{
@Html.ValidationSummary(true)
<div id="menu" class="tip_trigger">
<iframe width="731" height="335" src="@ViewData[" htmlloc "]"></iframe>
<div id="inner" class="hover-text">
<table>
<tr>
<td width="50%" align="center" valign="middle">
<img id="slctbtn" src="../../Images/Landing/s_btn.PNG" />
</td>
<td width="50%" align="center" valign="middle" style="padding-left: 200px">
<img id="clearbtn" src="../../Images/Landing/c_btn.PNG" />
</td>
</tr>
</table>
</div>
</div>
}
这是悬停的代码:
<script type="text/javascript">
$(document).ready(function () {
//Tooltips
$(".tip_trigger").hover(function () {
tip = $(this).find('.hover-text');
tip.show(); //Show tooltip
}, function () {
tip.hide(); //Hide tooltip
});
//
});
</script>
这是两个按钮的代码:
<script type="text/javascript">
$(function () {
$('#slctbtn').click(function () {
$('#htmla').click();
});
$('#htmla').change(function () {
$('form').submit();
});
$('#clearbtn').click(function () {
$(this).load('@Url.Action("Clear", "LandingSetting")');
alert('Content Cleared!');
window.location.reload(true);
});
});
</script>
注意:htmla是隐藏的输入类型文件
这是我的控制器代码:
public ActionResult Clear()
{
System.IO.File.Delete(Request.MapPath("/CSS/html/imgs/ex1.jpg"));
return RedirectToAction("Index");
}
问题是这在 IE8 以外的其他浏览器中运行良好。只有悬停代码在 IE8 中有效。我需要让它专门在 IE8 中工作。有人可以帮忙吗?谢谢
注意:在 IE 中,点击事件被触发,因为我可以看到警报但它不会触发 @url.action 方法