Inline Editing and $on.('change') in Library Control

Hi,

Can I just clarify, does the library $on…(‘change’, etc) function work ONLY if an item is added/edited/deleted using the Dialog mode? I just tested the code from the documentation:

fd.control(‘SPDataTable0’).$on(‘change’,
function() {
alert(‘List or Library changed’);
});

Which fires from a dialog update but does not if I edit the same item using ‘Inline’ mode. If so, that is OK I just wanted to make sure that this wasn’t a bug… the documentation does state Dialog but I wasn’t sure if this was written prior to introduction of Inline mode.

If I then use Dialog mode to update an item, is there a way I can return the ID of the item that was added/edited/deleted within the $on change handler?

For example, I update a column on a document with an ID of 7, can I return this value to the parent form to do some additional processing (say update other properties via PnP)?

Hello @abolam!

Currently, the ‘change’ event supported for the ‘dialog’ mode only. But we have a plan to add this functionality to List or Library in future releases.

And, unfortunately, passing the values from the child form to parent is not available right now.

If you are interested in adding this functionality we can offer you a paid support.
Please send us detailed requirements to support@plumsail.com to get an estimation.

Hi Andy,

One thing you could do is use the session store, something like the below on the child form to store the ID of the newly created item: -

fd.spSaved(function(result) {

var itemId = result.Id
sessionStorage.setItem('itemId ', itemId );
	
});

Then run a check in the 'change' event to see if the data exists in the session store and if so run the PNP script.

I've used this in a couple of places, just remember to clear the session store when you have finished with the data so it doesn't interfere with anything else.

@Tony_Duke

Thank you so much that's a brilliant idea!

Forgot about the wonders of session storage... I will have to try that out!

Thanks Tony!!

Now you can manipulate fields within List or Library control in Inline editing mode:

  • populate fields of a new row;
  • populating fields based on other fields in List or Library control;
  • Filtering lookup fields in List or Library control

Please find more details and instructions in the article here.