जूमला 2.5 डिफ़ॉल्ट पाठ संपादक को कैसे सत्यापित करें? - jquery, जूमला, सत्यापन, जूमला 2.5

jQuery का उपयोग कर धुंध पर जूमला डिफ़ॉल्ट पाठ संपादक को कैसे सत्यापित करें?

यह वह कोड है जिसे मैंने टेक्स्ट एडिटर प्राप्त किया था। उदाहरण, /models/forms/newsitem.xml में:

    <field name="description" type="editor" buttons="true"
hide="pagebreak,readmore,article,image"
class="inputbox required"
filter="JComponentHelper::filterText"
label="JGLOBAL_DESCRIPTION"
description="COM_NEWSITEMS_FIELD_DESCRIPTION_DESC" required="true" />

और दूसरी फ़ाइल (/views/.../edit.php) - जावास्क्रिप्ट में जोड़ने के लिए क्या नया ऑब्जेक्ट?

<script type="text/javascript">
Joomla.submitbutton = function(task) {
if (task == "newsitem.cancel" || document.formvalidator.isValid(document.id("newsitem-form"))) {
<?php echo $this->form->getField("description")->save(); ?>
Joomla.submitform(task, document.getElementById("newsitem-form"));
} else {
alert("<?php echo $this->escape(JText::_("JGLOBAL_VALIDATION_FORM_FAILED"));?>");
}
}
</script>

मैं जो चाहता हूं वह है कि मैं टेक्स्ट एडिटर के बगल में एक चेतावनी संदेश दिखाना चाहता हूं, जिसमें कहा गया है कि "आप इसे खाली नहीं कर सकते"। मैं इसे सबमिट में कर सकता हूं लेकिन असली चुनौती यह है कि धुंध पर इसे कैसे किया जाए।

उत्तर:

जवाब के लिए 0 № 1

यह कोड document.formvalidator.isValid(document.id("newsitem-form")) आपके फॉर्म को मान्य करता है अगर फ़ॉर्म में केवल संपादक ही है, तो आप इसे आजमा सकते हैं-

jQuery("#editorid").blur(function() {
if(!document.formvalidator.isValid(document.id("newsitem-form"))){
//Add your error message code

}
});

अद्यतन करें: -

jQuery(jQuery("iframe")[0].contentWindow).blur(function() {
var editor_text = jQuery("iframe").contents().find("body").text();
if(editor_text=="")alert("Error message");
});

नोट: - वैध चयनकर्ता का उपयोग करें जो संपादक iframe को इंगित करता है यह केवल तभी काम करेगा जब एक संपादक हो

उम्मीद है कि यह मदद करेगा।


जवाब के लिए 0 № 2

मुझे मिल गया है। बदल गया जवाब (लॉगिन- इरफान), लेकिन यह होना चाहिए - यदि आप "सहेजें" पर क्लिक करते हैं, तो संपादक एक त्रुटि (खाली टेक्स्ट) प्रदर्शित करता है। यहां एक उदाहरण है:

<script type="text/javascript">
Joomla.submitbutton = function(task) {
if (task == "newsitem.cancel" || document.formvalidator.isValid(document.id("newsitem-form"))) {
if(task != "newsitem.cancel") {
var boolSubmit = true;
if(jQuery("#jform_description_parent").is(":visible")) {
jQuery(jQuery("#jform_description_parent iframe")[0].contentWindow).each(function() {
var editor_text = jQuery("#jform_description_parent iframe").contents().find("body").text();
if(editor_text=="") {
alert("<?php echo $this->escape(JText::_("JGLOBAL_VALIDATION_FORM_FAILED"));?>");
boolSubmit = false
}
});
} else {
jQuery("textarea#jform_description").each(function() {
if(jQuery(this).val()=="") {
alert("<?php echo $this->escape(JText::_("JGLOBAL_VALIDATION_FORM_FAILED"));?>");
boolSubmit = false;
}
});
}
if(!boolSubmit)
return boolSubmit;
}
<?php echo $this->form->getField("description")->save(); ?>
Joomla.submitform(task, document.getElementById("newsitem-form"));
} else {
alert("<?php echo $this->escape(JText::_("JGLOBAL_VALIDATION_FORM_FAILED"));?>");
}
}
</script>

सभी सही निष्कर्ष? मुझे लगता है कि यह ठीक हो सकता है।


संबंधित सवाल
सबसे लोकप्रिय