我被要求提出另一个问题并将其链接到该线程。 How add mandatory dropdown field in Touch UI
我的问题是: 有人可以告诉我 javascript 函数的结束行正在做什么吗?
})(document, Granite.$, Granite.author);
它是某种命名空间吗?
为了供您引用,我附上了 Javascript 代码。
(function (document, $, ns) {
"use strict";
$(document).on("click", ".cq-dialog-submit", function (e) {
e.stopPropagation();
e.preventDefault();
var $form = $(this).closest("form.foundation-form"),
title = $form.find("[name='authoringMode']").val(),
message, clazz = "coral-Button ";
if(!title){
ns.ui.helpers.prompt({
title: Granite.I18n.get("Invalid Input"),
message: "Please Check Values",
actions: [{
id: "CANCEL",
text: "CANCEL",
className: "coral-Button"
}
],
callback: function (actionId) {
if (actionId === "CANCEL") {
}
}
});
}else{
$form.submit();
}
});
})(document, Granite.$, Granite.author);
最佳答案
这就是我们所说的自调用函数:
(function (document, $, ns) { ...
})(document, Granite.$, Granite.author);
那些(“文档、Granite...等)是传递给同一个函数的参数。
关于关于函数的 Javascript 问题 - IIFE,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37062963/