تقييم هذا النموذج وعرض عنصر HtmlOutput ستكون أيّ سمات تمّ ضبطها على كائن HtmlTemplate هذا ضمن النطاق عند التقييم. لتصحيح الأخطاء في نموذج، راجِع الرمز باستخدام الطريقة getCode().
// A template which evaluates to whatever is bound to 'foo'.consttemplate=HtmlService.createTemplate('<?= foo ?>');template.foo='Hello World!';Logger.log(template.evaluate().getContent());// will log 'Hello World!'
تُنشئ سلسلة من رموز JavaScript، استنادًا إلى ملف النموذج، والتي يمكن تقييمها. تُنشئ هذه المحاولة سلسلة من رمز JavaScript استنادًا إلى ملف النموذج. سيؤدي استدعاء eval(<code>) إلى عرض عنصر HtmlOutput جديد يتضمّن محتوى النموذج بعد تشغيل جميع النصوص البرمجية المضمّنة للخادم. من المفترض أن يكون الرمز الذي تم إنشاؤه سهل القراءة، لذا إذا كنت بحاجة إلى تصحيح أخطاء نموذج، يمكنك الاتصال برقم Logger.log(<code>) للاطّلاع على ما تم إنشاؤه.
سيؤدي تقييم هذا الرمز إلى الربط الضمني لجميع المتغيّرات في النطاق الحالي. بشكل عام، يُفضَّل استخدام الطريقة evaluate() التي تأخذ عمليات ربط صريحة.
consttemplate=HtmlService.createTemplate('<b>The time is <?= new Date() ?></b>',);Logger.log(template.getCode());
الإرجاع
String: سلسلة تستند إلى النموذج ويمكن تقييمها
getCodeWithComments()
تُنشئ سلسلة من رموز JavaScript التي يمكن تقييمها، مع احتواء كل سطر من الرمز على السطر الأصلي من النموذج كتعليق. تُنشئ هذه الطريقة سلسلة من رمز JavaScript استنادًا إلى ملف النموذج. سيؤدي استدعاء eval(<code>) إلى عرض عنصر HtmlOutput جديد يتضمّن محتوى النموذج بعد تنفيذ جميع النصوص البرمجية المضمّنة في الخادم. يُفترض أن يكون الرمز الذي تم إنشاؤه سهل القراءة، لذا إذا كنت بحاجة إلى تصحيح أخطاء نموذج، يمكنك الاتصال بالرقم Logger.log(<code>) للاطّلاع على ما تم إنشاؤه.
سيؤدي تقييم هذا الرمز إلى الربط الضمني لجميع المتغيّرات في النطاق الحالي. بشكل عام، يُفضَّل استخدام الطريقة evaluate() التي تأخذ عمليات ربط صريحة.
consttemplate=HtmlService.createTemplate('<b>The time is <?= new Date() ?></b>',);Logger.log(template.getCodeWithComments());
الإرجاع
String: سلسلة تستند إلى النموذج ويمكن تقييمها
getRawContent()
عرض المحتوى غير المعالج لهذا النموذج
consttemplate=HtmlService.createTemplate('<b>The time is <?= new Date() ?></b>',);Logger.log(template.getRawContent());
تاريخ التعديل الأخير: 2025-07-26 (حسب التوقيت العالمي المتفَّق عليه)
[[["يسهُل فهم المحتوى.","easyToUnderstand","thumb-up"],["ساعَدني المحتوى في حلّ مشكلتي.","solvedMyProblem","thumb-up"],["غير ذلك","otherUp","thumb-up"]],[["لا يحتوي على المعلومات التي أحتاج إليها.","missingTheInformationINeed","thumb-down"],["الخطوات معقدة للغاية / كثيرة جدًا.","tooComplicatedTooManySteps","thumb-down"],["المحتوى قديم.","outOfDate","thumb-down"],["ثمة مشكلة في الترجمة.","translationIssue","thumb-down"],["مشكلة في العيّنات / التعليمات البرمجية","samplesCodeIssue","thumb-down"],["غير ذلك","otherDown","thumb-down"]],["تاريخ التعديل الأخير: 2025-07-26 (حسب التوقيت العالمي المتفَّق عليه)"],[[["\u003cp\u003e\u003ccode\u003eHtmlTemplate\u003c/code\u003e helps you dynamically build HTML content within Apps Script.\u003c/p\u003e\n"],["\u003cp\u003eIt provides methods like \u003ccode\u003eevaluate()\u003c/code\u003e to render HTML with data, and \u003ccode\u003egetCode()\u003c/code\u003e to generate the underlying JavaScript.\u003c/p\u003e\n"],["\u003cp\u003eYou can use \u003ccode\u003egetRawContent()\u003c/code\u003e to access the original template content and \u003ccode\u003egetCodeWithComments()\u003c/code\u003e for debugging purposes.\u003c/p\u003e\n"],["\u003cp\u003eThe rendered output can be further handled using the \u003ccode\u003eHtmlOutput\u003c/code\u003e object.\u003c/p\u003e\n"]]],[],null,["HtmlTemplate\n\nA template object for dynamically constructing HTML. For more information, see the [guide to templates](/apps-script/guides/html/templates). \n\nMethods\n\n| Method | Return type | Brief description |\n|-------------------------------------------------|-------------------------------------------------------|------------------------------------------------------------------------------------------------------------------------------------------------------|\n| [evaluate()](#evaluate()) | [HtmlOutput](/apps-script/reference/html/html-output) | Evaluates this template and returns an [HtmlOutput](/apps-script/reference/html/html-output) object. |\n| [getCode()](#getCode()) | `String` | Generates a string of JavaScript code, based on the template file, that can be evaluated. |\n| [getCodeWithComments()](#getCodeWithComments()) | `String` | Generates a string of JavaScript code that can be evaluated, with each line of the code containing the original line from the template as a comment. |\n| [getRawContent()](#getRawContent()) | `String` | Returns the unprocessed content of this template. |\n\nDetailed documentation \n\n`evaluate()` \nEvaluates this template and returns an [HtmlOutput](/apps-script/reference/html/html-output) object. Any properties set on this\n`Html``Template` object will be in scope when evaluating. To debug errors in a template,\nexamine the code using the [getCode()](#getCode()) method.\n\n```javascript\n// A template which evaluates to whatever is bound to 'foo'.\nconst template = HtmlService.createTemplate('\u003c?= foo ?\u003e');\ntemplate.foo = 'Hello World!';\nLogger.log(template.evaluate().getContent()); // will log 'Hello World!'\n```\n\nReturn\n\n\n[HtmlOutput](/apps-script/reference/html/html-output) --- an HtmlOutput object\n\n*** ** * ** ***\n\n`get``Code()` \nGenerates a string of JavaScript code, based on the template file, that can be evaluated. This\nmethod produces a string of JavaScript code based on the template file. Calling `\neval(\u003ccode\u003e)` will return a new [HtmlOutput](/apps-script/reference/html/html-output) object with the content of the\ntemplate after running all embedded server scripts. The generated code is intended to be\nhuman-readable, and so if you need to debug a template you can call `\nLogger.log(\u003ccode\u003e)` to see what was produced.\n\nEvaluating this code will implicitly bind in all variables in the current scope. In general,\nit's preferable to use the [evaluate()](#evaluate()) method, which takes explicit bindings.\n\n```javascript\nconst template = HtmlService.createTemplate(\n '\u003cb\u003eThe time is <?= new Date() ?>\u003c/b\u003e',\n);\nLogger.log(template.getCode());\n```\n\nReturn\n\n\n`String` --- a string based on the template, which can be evaluated\n\n*** ** * ** ***\n\n`get``Code``With``Comments()` \nGenerates a string of JavaScript code that can be evaluated, with each line of the code\ncontaining the original line from the template as a comment. This method produces a string of\nJavaScript code based on the template file. Calling `eval(\u003ccode\u003e)` will return\na new [HtmlOutput](/apps-script/reference/html/html-output) object with the content of the template after running all embedded\nserver scripts. The generated code is intended to be human-readable, and so if you need to\ndebug a template you can call `Logger.log(\u003ccode\u003e)` to see what was produced.\n\nEvaluating this code will implicitly bind in all variables in the current scope. In general,\nit's preferable to use the [evaluate()](#evaluate()) method, which takes explicit bindings.\n\n```javascript\nconst template = HtmlService.createTemplate(\n '\u003cb\u003eThe time is <?= new Date() ?>\u003c/b\u003e',\n);\nLogger.log(template.getCodeWithComments());\n```\n\nReturn\n\n\n`String` --- an string based on the template, which can be evaluated\n\n*** ** * ** ***\n\n`get``Raw``Content()` \nReturns the unprocessed content of this template.\n\n```javascript\nconst template = HtmlService.createTemplate(\n '\u003cb\u003eThe time is <?= new Date() ?>\u003c/b\u003e',\n);\nLogger.log(template.getRawContent());\n```\n\nReturn\n\n\n`String` --- the template's raw content"]]