A Way to De-select a Table Row

In a volunteer scheduling app that I’ve been working on, I have been utilizing tables on an entry form to display and edit schedules. In the table click settings, I would much rather have it select the row rather than the cell. The user (scheduler) needs to be fully cognizant of what row they are considering at the moment. The problem occurs when a different month is chosen to filter on. If I do nothing, the same row from the previous month is chosen, which, for obvious reasons, is not what anyone would want. I could have it select the first row, but the user didn’t choose that row, and if they want to choose it, the onRowSelect event will not run when they click on it so that the selection box on the right displays with the relevant information/choices for that particular scheduling slot.

I’ve set the click settings to cell and that gets rid of the problem when you re-filter and are looking at a new set of records, but selecting the whole row is so important to intuitive user experience. I originally started with a repeater, but the performance for twenty or more rows of data was not acceptable. I have this all working to my satisfaction except for the row selection issue.

So … how difficult would it be to have the selectRow function accept a parameter of -1 which would have the effect of de-selecting the row, or if that is problematic, could a new unselectRow function be added?

Here are a couple annotated screen shots to give a better idea of what I am describing. This is the smallest committee in the organization. I chose it because I could quickly change the few volunteer last names to Doe. There are 20 to 25 slots per month in other committees which, as noted above, starts to be a problem if this were to be done in a repeater. It’s also nice to be able to show all of the records not filtered by month for a given committee. The load time for 80 to 100 records varies, but it is often surprisingly snappy.

You’re right that there should be a straightforward way to do it, but for now you can do:

$w('#table').rows = $w('#table').rows;

(I haven’t noticed this is an old request in the Feature Request section. I hope it still can help)