سؤال

أواجه مشكلة في مشروع أعمل عليه في الوقت الحالي يستفيد من تصديق البرنامج المساعد لـ jQuery ، عندما يظهر خطأ التحقق من الصحة ، أقوم بتطبيق علامة مرساة ديناميكية عليها باستخدام onclick. وهذه onclick هذه هي المشكلة ...

في المرة الأولى التي يظهر فيها خطأ التحقق من الصحة ، يتعين علي النقر على الرابط مرتين حتى يتم إطلاق حدث OnClick.

لقد ألقيت نظرة على الصفحة من خلال شريط أدوات المطورين IE ، ويلتف المرساة رسالة التحقق بشكل صحيح ، مع إرفاق جميع ملفات JavaScript الضرورية

ماذا يحدث؟ أي اقتراحات ستكون موضع تقدير كبير :)

تحرير: مقتطفات الرمز المضافة

jQuery(document).ready(function() {
        jQuery('#group-edit-form').validate({
            rules: {
                title: {
                    required: true,
                    remote: '<%=Url.Action("ValidateGroupName", new { id = ViewData["GroupId"] }) %>?parentId=' + getParentId()
                }
            },
            messages: {
                title: {
                    required: getMessage (7002),
                    remote: '<%= ((MessagingModel)ViewData["Messages"]).GetMessage (9001) %>'
                }
            }
        })

    });
    function getMessage(messageId) {
        var message = "<a id='errorMessageAnchor_" + messageId + "' onclick='messageBuilder(" + messageId + ")'><%= ((MessagingModel)ViewData["Messages"]).GetMessage (7002) %></a>";

        return message;
    }
هل كانت مفيدة؟

المحلول

إنه حدث Blur الذي يتداخل مع نقرة المرساة.

يمكنك اختيار أحد هذه الخيارات:

  • تعطيل التحقق من صحة الحدث مع onfocusout:false
  • تعطيل ضبط التركيز على عنصر غير صالح مع focusInvalid:false
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top