رفع "عند_التغيير" حدث عند إدخال العنصر تغييرها من قبل جافا سكريبت من نافذة منبثقة

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

سؤال

ولدي صفحة ويب مع عنصر نموذج ونافذة منبثقة (فتح بواسطة window.open).

وكلاهما مسج المتاحة.

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

$(opener.document.formelement).val(vals[0]);

ولكن قبل القيام بذلك الحدث onChange لن اطلاق النار. التي ستكون مطلوبة من قبل بعض عناصر الصفحة الأخرى، وإن كان. لذلك حاولت أن إطلاق الحدث عند_التغيير نفسي

$(opener.document.formelement).change();

ولكن هذا لا تفعل أي شيء.

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

وهذا السؤال يشبه اتصل جافا سكريبت عند_التغيير الحدث برمجيا تغيير قيمة النص ، ولكن الحلول المقترحة من هذا السؤال لا يبدو أن العمل بالنسبة لي. ربما هذا بسبب المنبثقة.

هل كانت مفيدة؟

المحلول

وربما في تبادل اطلاق النافذة التي تضر لك ... حاول جعل وظيفة داخل فتحت أن استدعاء بدلا من ذلك. قد تساعد؟

في المباراة الافتتاحية:

window.changeMyElement = function(value) {
  $(formelement).val(value).change();
}

ومن منبثقة:

opener.changeMyElement(value);

نصائح أخرى

وهذا هو المفترض خط للعمل:

$(opener.document.formelement).change();

ووفقا ل هذا الخط بتشغيل حدث تغيير كل عنصر مطابقة.

إذا كان لا يعمل بالنسبة لك، ثم هناك مشكلة في التعليمات البرمجية الخاصة بك في مكان ما. يمكنك تحريك الحدث onchange عن طريق تغيير في العنصر شكل باليد؟

ويمكنك أيضا القيام:

window.opener.document.getElementById('controlname').fireEvent('onchange');

وأو في السياق الخاص بك:

$(opener.document.formelement).fireEvent('onchange');
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top