Je vais un peu fou ici. J'ai essayé de comprendre quel est le problème au cours des dernières 24 heures, mais je ne peux tout simplement pas comprendre ce qui ne va pas.Formulaire ASP.NET MVC soumis dans FF/Chrome, pas dans IE
J'ai un cadre de soumission d'article. D'abord, l'utilisateur entre des champs de texte d'article, puis il télécharge 2 images, puis il les recadre. Le problème se produit lorsque j'essaie de recadrer les images - le bouton de soumission ne fonctionne tout simplement pas. Je clique dessus et rien ne se passe.
Cependant, cela ne se produit que dans IE.
Dans FF et Chrome, il fonctionne parfaitement.
Ce code ASPX des CropImages Vue:
<%@ Page Title="" Language="C#" MasterPageFile="~/Views/Admin/Site.Admin.Master" Inherits="System.Web.Mvc.ViewPage<dr_teman_MVC.Models.ImagesUploadModel>" %>
<asp:Content ID="Content1" ContentPlaceHolderID="MainContentPlaceHolder" runat="server">
<div class="span-22 append-1 prepend-1 contentarea">
<h2>גזור התמונות</h2>
<div class="cropImageSpan">
<img src="<%= Html.Encode(Model.newArticle.Image1.originalImageAddress)%>" alt="cropImage1" id="crop_target1" "/>
</div>
<div class="cropImageSpan">
<img src="<%= Html.Encode(Model.newArticle.Image2.originalImageAddress)%>" alt="cropImage2" id="crop_target2" "/>
</div>
<% using (Html.BeginForm("ArticleCreated", "Admin", FormMethod.Post, new { enctype = "multipart/form-data" }))
{ %>
<input type="hidden" id="img1x1" name="img1x1" />
<input type="hidden" id="img1y1" name="img1y1" />
<input type="hidden" id="img1x2" name="img1x2" />
<input type="hidden" id="img1y2" name="img1y2" />
<input type="hidden" id="img2x1" name="img2x1" />
<input type="hidden" id="img2y1" name="img2y1" />
<input type="hidden" id="img2x2" name="img2x2" />
<input type="hidden" id="img2y2" name="img2y2" />
<input type="hidden" id="articleID" name="articleID" value= "<%= Html.Encode((Model.newArticle.ArticleID).ToString()) %>"/>
<div>
<input name="submit" type="submit" value="סיום"/>
</div>
<%} %>
</div><!--/span-22 append-1 prepend-1 contentarea-->
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="htmlHead" runat="server">
<script src="../../Scripts/jquery.imgareaselect-0.9.2/scripts/jquery.imgareaselect.js" type="text/javascript"></script>
<script type="text/javascript">
$(function() {
$('#crop_target1').imgAreaSelect({
aspectRatio: '4:5',
handles: true,
onSelectEnd: function(img, selection) {
$('input[name=img1x1]').val(selection.x1);
$('input[name=img1y1]').val(selection.y1);
$('input[name=img1x2]').val(selection.x2);
$('input[name=img1y2]').val(selection.y2);
}
});
$('#crop_target2').imgAreaSelect({
aspectRatio: '4:5',
handles: true,
onSelectEnd: function(img, selection) {
$('input[name=img2x1]').val(selection.x1);
$('input[name=img2y1]').val(selection.y1);
$('input[name=img2x2]').val(selection.x2);
$('input[name=img2y2]').val(selection.y2);
}
});
});
</script>
</asp:Content>
<asp:Content ID="Content3" ContentPlaceHolderID="head" runat="server"></asp:Content>
avez-vous besoin le code de toute autre partie? (les modèles concernés? le contrôleur?)
La page aspx est affichée, avec les images. Le mécanisme de recadrage fonctionne - Je peux sélectionner la région de recadrage dans les deux images. Mais dans IE, quand je clique sur soumettre, rien ne se passe. J'ai ajouté un point d'arrêt au contrôleur correspondant (Admin/ArticleCreated
), mais il n'y arrive même pas (le code atteint le contrôleur qui appelle cette vue aspx, et transmet toutes les informations comme prévu). Donc, est-ce que quelqu'un sait pourquoi IE me cause de tels problèmes?
Toute suggestion serait la bienvenue, je suis vraiment perplexe ici ...
Merci,
Tom
Il serait utile de voir comment tout cela rend (c'est-à-dire le HTML vu par le navigateur). – Oded
a ajouté une réponse avec le code source (extrait de IE). –
Salut Tom, avez-vous déjà compris cela? – rvarcher