Ho un modulo che utilizza la convalida non invadente. Recentemente ho cambiato area di testo per usare tiny mce e ora la validazione non funziona.
Ho provato a utilizzare la soluzione da here ma non succede nulla.
Impossibile convalidare TinyMCE in asp mvc
$('#form input[type=submit]').click(function() {
Non esegue mai. Ecco quello che ho:
@using (Html.BeginForm("Create", "UserAd", FormMethod.Post))
{
...
@Html.TextAreaFor(x => x.Description, new { id = "description" })
...
<input type="submit" value="Create"/>
...
Questo è il codice JS:
$(document).ready(function() {
tinyMCE.init({
mode: "textareas",
theme: "advanced",
skin: "o2k7",
height: "250",
plugins: "autolink,lists,spellchecker,pagebreak,style,layer,table,save,advhr,advimage,advlink,emotions,iespell,inlinepopups,insertdatetime,preview,media,searchreplace,print,contextmenu,paste,directionality,fullscreen,noneditable,visualchars,nonbreaking,xhtmlxtras,template",
theme_advanced_buttons1: "bold,italic,underline,strikethrough,|,justifyleft,justifycenter,justifyright,justifyfull,|,bullist,numlist",
theme_advanced_buttons2: "",
theme_advanced_buttons3: "",
theme_advanced_buttons4: "",
theme_advanced_toolbar_location: "top",
theme_advanced_toolbar_align: "left",
theme_advanced_resizing: false
});
function toggleEditor(id) {
if (!tinyMCE.get(id)) {
tinyMCE.execCommand('mceAddControl', false, id);
}
else {
tinyMCE.execCommand('mceRemoveControl', false, id);
}
}
// new
$(function() {
var tinymce = $('#Description');
tinymce.tinymce({
setup: function (e) {
e.onInit.add(function() {
tinymce.css({
position: 'absolute',
height: 0,
width: 0,
top: -100
}).show();
});
}
});
$('#form input[type=submit]').click(function() {
alert('ss');
tinyMCE.triggerSave();
});
});
// makes form field highlighting work with bootstrap's css
$.validator.setDefaults({
highlight: function (element, errorClass, validClass) {
$(element).closest('.control-group').addClass('error');
},
unhighlight: function (element, errorClass, validClass) {
$(element).closest('.control-group').removeClass('error');
}
});
$(function() {
// makes form field highlighting work with bootstrap's css on post backs
$('.input-validation-error').each(function (i, element) {
$(element).closest('.control-group').not('.error').addClass('error');
});
});
ho provato e ancora niente – 1110
Qual è l'ID del modulo? Vedi la mia risposta aggiornata. Può essere perché il tuo elemento è dinamico, prova ad usare la funzione on() per il tuo gestore di clic per il mio esempio. –
Ho aggiunto l'id a un modulo e questa funzione ma non ho più fortuna :( – 1110