سؤال

لدي ثلاثة أجزاء ويب ListView متصلة في صفحة تطبيق، وأريد أن أكون قادرا على الوصول إلى العنصر المحدد في كل جزء ويب.لم يتم تحديد هذا كما هو الحال في "خانات الاختيار" ولكن بدلا من ذلك، فإن العنصر المتصل الذي يمر قيمة المرشح إلى جزء ويب التالي.لقد حاولت giveacodicetagpre.

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

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

المحلول

I created three web parts connected together and filterable using Title: SharePoint online webpart connections

Choose a color -> Choose a fruit -> View fruit details.

I created the following selector (jQuery required):

$('img[alt="Selected"]').parent().next().children('div.ms-vb');

Which returns an array of the selected elements which have an ID attribute. You could then do a simple each and do the work you want with each ID.

$('img[alt="Selected"]').parent().next().children('div.ms-vb').each(function(i){
   console.log($(this).attr('id'));
});
// will give you:
// 3 (Blue)
// 2 (Blueberry)

Shows up like this in Chrome console:

SharePoint selector to find currently filtered items

I think this will work as long as the you use the Title (linked to item) column in the web parts.

نصائح أخرى

If you use JSLink instead, I think you can connect to the items in the ListView Web Part like this:

  1. In a location of your choice (such as SiteAssets library of your site, or in _catalogs/masterpage), create new JavaScript file.
  2. In the file, add the code below
  3. In your web part, reference this JavaScript file in the JSLink setting, like ~/site/SiteAssets/news_ui.js
(function () {
 // Initialize the variables for overrides objects
 var overrideCtx = {};
 overrideCtx.Templates = {};

 overrideCtx.Templates.Fields = {
 'ID': { 'ItemID' : ctx.CurrentItem.ID } 
 };

 SPClientTemplates.TemplateManager.RegisterTemplateOverrides(overrideCtx);
 })();

Reference:

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى sharepoint.stackexchange
scroll top