MDL-30660 javascript-static: M.util.show_confirm_dialog fixes

This commit is contained in:
Tim Hunt
2011-12-08 17:50:11 +00:00
parent 42f6b3f1d7
commit e16c0b9da6

View File

@@ -263,13 +263,26 @@ M.util.show_confirm_dialog = function(e, args) {
if (target.test('a')) {
window.location = target.get('href');
} else if ((targetancestor = target.ancestor('a')) !== null) {
window.location = targetancestor.get('href');
} else if (target.test('input')) {
targetform = target.ancestor('form');
if (targetform && targetform.submit) {
targetform.submit();
if (!targetform) {
return;
}
if (target.get('name') && target.get('value')) {
targetform.append('<input type="hidden" name="' + target.get('name') +
'" value="' + target.get('value') + '">');
}
targetform.submit();
} else if (target.get('tagName').toLowerCase() == 'form') {
// We cannot use target.test('form') on the previous line because of
// http://yuilibrary.com/projects/yui3/ticket/2531561
target.submit();
} else if (M.cfg.developerdebug) {
alert("Element of type " + target.get('tagName') + " is not supported by the M.util.show_confirm_dialog function. Use A or INPUT");
}