Sto setacciando internet (incluso SO) e non riesco a trovare nulla che mi aiuti con la mia situazione, quindi spero Posso avere un aiuto da voi ragazzi.
Fondamentalmente, come dice il titolo, il .submit() NON sta attivando in IE. Tutti gli altri browser funzionano bene, ma in IE (8, 9, 10 fino ad ora) semplicemente non attiva il submit.
Ecco il codice della vista:
<form id="@formId" method="post" enctype="multipart/form-data" action="@Url.Content("/ActivityEvent/SubmitCheckpointApproval")">
<table id="checkpoint-approval" style="width:100%" align="center" class="noBorders">
<tr>
<td style="width: 520px;">
<div>
Please enter any relevant comments:
</div>
<div style="margin: 10px 0;">
<textarea class="wysiwygSimple" rows="4" cols="60" name="comment" id="[email protected](actTplId)"></textarea>
</div>
</td>
<td style="border: 0; padding-top: 30px; text-align: center; width:70px;">
<img alt="key" src="/Content/Images/checkmarkInCircle.png" align="middle" style="width: 100px;
height: 100px;" /><br />
<p style="text-align: left; margin-top: 10px;">
The notes and resources entered here are shared with the student.</p>
</td>
</tr>
<tr>
<td colspan="2" class="ResourcesUploadList">
Suggest some resources:<br />
<div style="float: left;">
<input class="Multi" type="file" name="resourceFiles[]" /></div>
<div style="float: left; margin-left: 10px; font-style: italic;">
(click browse for each file you want to upload)</div>
<div style="clear: both;">
</div>
</td>
</tr>
<tr>
<td style="border: 0; text-align: center; width:600px;" colspan="2">
@if (hasAdminRights)
{
<input type="button" @Html.Raw(btnStyle) class="activityApprove" name="actionApprove" id="actionApprove" value="Tutor Completion Approval" title = "Approves all activities preceding this checkpoint as complete." onclick="Activity.submitCheckpointApproval('@(formId)', '@(ActivityEvent.EVENT_TYPE_APPROVED)',@(actTplId));" />
<input type="button" @Html.Raw(btnStyle) class="activityAttention" name="actionAttention" id="actionAttention" value="Needs Attention" title = "Notifies the student that this project needs additional work prior to completion." onclick="Activity.submitCheckpointApproval('@(formId)', '@(ActivityEvent.EVENT_TYPE_NEEDS_ATTENTION)',@(actTplId));" />
}
<input type="button" @Html.Raw(btnStyle) value="Cancel" title = "Close this." onclick="javascript:$('#[email protected](actTplId)').toggle();" />
</td>
</tr>
</table>
</form>
Quando i pulsanti sono cliccato:
Activity = {
submitCheckpointApproval: function (formId, activityEventStatusId, activityTemplateId) {
var resultsDivId = $("#checkpointResults" + activityTemplateId);
Activity.showCheckpointLoading(resultsDivId); //Just shows a spinner for loading
$("#checkpoint-activityEventStatusId-" + activityTemplateId).val(activityEventStatusId);
$("#" + formId).submit(); //PROBLEM IS HERE??
},
...
};
E, infine, il controllore:
[HttpPost]
[ValidateInput(false)]
public ActionResult SubmitCheckpointApproval()
//Save everything in here
}
Quando il debug in IE, riesco a la riga .submit() in js ed eseguila da lì. Tutto prima funziona bene, ma poi .submit() arriva e smette di fare qualsiasi cosa. Nessun errore javascript, niente nella console, nessuna indicazione di alcun problema. In tutti gli altri browser, il .submit() si attiva correttamente e il controller si interrompe nel metodo che viene chiamato.
Qualche idea sul perché questo sta accadendo in IE? Sono sicuro che qualcuno l'abbia mai visto prima !! Per favore aiuto, ho battuto la testa dalla mia scrivania per tutto il pomeriggio!
Grazie ragazzi!
si fa a ottenere eventuali errori? –
Puoi provare questo? '$ ('#' + formId) .trigger ('submit');' –
@Barry: negativo. Nessun cambiamento in IE. – SlackerCoder