استخدام ملف JavaScript في Elements.xml
-
10-12-2019 - |
سؤال
أحاول إنشاء شريط مخصص وفي مشروعي قمت بإنشاء ملف JavaScript.
من هذا و هذا السؤال وكنت قادرا على معرفة ما يمكنني استخدامه <CustomAction>
علامة لاستيراد ملف JavaScript.
<CustomAction Id="Ribbon.Library.Actions.Scripts"
Location ="ScriptLink" ScriptSrc="/_layouts/MyJSFile.js" />
الآن بلدي Elements.xml
يشبه هذا:
<?xml version="1.0" encoding="utf-8"?>
<Elements xmlns="http://schemas.microsoft.com/sharepoint/">
<CustomAction Id="Ribbon.Library.Actions.Scripts" Location="ScriptLink"
ScriptSrc="/_layouts/CustomRibbonButton/JavaScript1.js" />
<CustomAction
Id="Ribbon.Library.Actions.AddAButton"
Location="CommandUI.Ribbon"
RegistrationId="101" RegistrationType="List"
Title="Add a Ribbon Button">
<CommandUIExtension>
<CommandUIDefinitions>
<CommandUIDefinition
Location="Ribbon.Library.Share.Controls._children">
<Button Id="Ribbon.Library.Share.NewRibbonButton"
Command="NewRibbonButtonCommand"
Image16by16="_layouts/15/images/placeholder16x16.png"
Image32by32="_layouts/15/images/placeholder32x32.png"
LabelText="Hello World"
TemplateAlias="o2" />
</CommandUIDefinition>
</CommandUIDefinitions>
<CommandUIHandlers>
<CommandUIHandler
Command="NewRibbonButtonCommand"
CommandAction="javascript:getFiles()" />
</CommandUIHandlers>
</CommandUIExtension>
</CustomAction>
</Elements>
عندما أقوم بتحميل صفحتي في IE في علامة التبويب "الشبكة" في أدوات مطور IE، يمكنني رؤية خطأ 404 مفاده أنه غير قادر على العثور على المسار /_layouts/customribbonbutton/javascript1.js
.لقد قمت بتحديث بلدي <CustomAction>
علامة لهذا:
<CustomAction Id="Ribbon.Library.Actions.Scripts" Location="ScriptLink"
ScriptSrc="/_layouts/JavaScript1.js" />
ولكن ما زلت أتلقى نفس الخطأ 404، وإن كان بمسار مختلف.
ما الخطأ الذي أفعله هنا؟
المحلول
تحتاج إلى إلحاق 15 بـ _layouts، أي /_layouts/15
من أجل الحصول على الملف أثناء العمل على SP 2013.
تحديث
ضع ملف جافا سكريبت ضمن مجلد CustomRibbonButton في مشروعك واستخدمه /_layouts/15/CustomRibbonButton/JavaScript1.js
.مجلد الخلية لـ SharePoint 2013 هو 15.كان 12 لـ MOSS و 14 لـ SP 2010.يجب استخدام هذا بشكل صريح لأن SP 2013 يدعم أيضًا الحلول المستندة إلى 2010 وإذا لم تذكر 15 في التعليمات البرمجية الخاصة بك، فسوف يبحث عن الملف في 14 خلية.
نصائح أخرى
أضف ما يلي بين <CommandUIExtension>
علامة فتح وإغلاق
<CommandUIHandler
Command="NewRibbonButtonCommand"
CommandAction="javascript:Convertion();"
EnabledScript="javascript:enable();"/>