ASP.Net السيناريو الضوابط تعود كاذبة من OnClick و فايرفوكس

StackOverflow https://stackoverflow.com/questions/341449

سؤال

الشرح باختصار:

لدي سكربت التحكم الذي يحتوي على انقر فوق الحدث يجري التعامل معها في ملف البرنامج النصي.انقر فوق معالج ينبثق تأكيد موجه وإرجاع فورية قيمة.

المشكلة:

أي يرى return False (إلغاء تحديد على تأكيد مربع) وليس هناك إعادة النشر.فايرفوكس يتجاهل هذا حرائق إعادة النشر.

حل؟:

قرأت أنه إذا كنت تفعل ذلك بالطريقة القديمة, سوف تحتاج إلى:

onClick="return SomeMethod();"

في العلامات.هناك أمل هو طريقة للقيام بذلك مع البرنامج النصي الضوابط ؟

على سبيل المثال:

هذا ما لدي في ملف البرنامج النصي:

//THIS IS THE METHOD CLICK CALLS
handleLnkDeleteButtonClick: function(e)
{
    var confirmed = confirm('This will delete the current Message category and move all messages to the Oprhan cataegory.  Continue?');
    return confirmed;
},

initialize: function()
{
    this._lnkDeleteButton = $get(this._lnkDeleteButtonID);
    this._lnkDeleteButton.idpicker = this;

    //HOOK BEGINS HERE
    this._lnkDeleteButtonClick = Function.createDelegate(this, this.handleLnkDeleteButtonClick);
    $addHandler(this._lnkDeleteButton, "click", this._lnkDeleteButtonClick);
    //END HOOK HERE

    NDI.WebControls.Client.PersonalMessageTypePicker.callBaseMethod(this, 'initialize');
},

dispose: function()
{
    $removeHandler(this._lnkDeleteButton, "click", this._lnkDeleteButtonClick);
    NDI.WebControls.Client.PersonalMessageTypePicker.callBaseMethod(this, 'dispose');
}
هل كانت مفيدة؟

المحلول

طيب حتى حلها نفسي بعد عن الطريقة الكثير من الوقت في محاولة العبارة الأشياء بشكل صحيح في google.تبين أن هناك طريقة للاتصال حتى أن كنت لا داعي للقلق حول إرجاع true أو false.

handleLnkDeleteButtonClick: function(e)
{
    var confirmed = confirm('This will delete the currery Message category and move all messages to the Oprhan cataegory.  Allow?');
    if (!confirmed)
    {
        e.preventDefault();
    }
},

وذلك بدلا من إعادة تأكيد, أنا فقط التحقق من ذلك قيمة استدعاء هـ.preventDefault طريقة لوقف انقر فوق من النار.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top