ASP.Net grid with frozen headers, columns and lots of data - asp.net

I am in need of a control that will give me input functionality where the user will get a few locked columns on the left and will be able to enter some values into text boxes to the right (for example a row value may be a name, and the columns would be each day of a month). As the user inputs values and scrolls to the right, the first couple of columns on the left would say locked (i.e. in view) and as the user scrolls down the list the headers would stay in view.
I have done exhaustive analysis of JQuery fixed header/column plugins, and while many of them were promising, none of them worked well once there were many rows (> 100) and many columns (> 15 or so). They would all start to freeze the browser (especially in IE).
I am more than happy to buy a commercial control that meets my needs, but I haven't been able to find any.
Does anyone have any recommendations?

Related

How do I link between items in Qualtrics?

I have a block of 7 items in Qualtrics. Right now, I have it set up so it displays the first item to everyone, and then presents a random item from the next 5, and then presents the last item to everyone. The last item asks respondents to summarize what they read (which was one of the 5 random ones).
I want them to be able to go re-read the item in case they weren't paying close enough attention.
Some ways of doing this might be:
Include a back button (but I'd want this to be the only place where they could go back), and I don't think it'd work anyway since I have randomization.
Include a link? (e.g. "To re-read the passage click here" and then something would pop up?) I don't know if there is a way to do this.
Include the last item on the same page as the randomized ones. It automatically broke them into separate pages - is there a way to include them in the same page?
If anyone knows how to do any of these, or has another suggestion, please help :)
Put the 5 random items and the last item in the same block, then under block options choose Question Randomization. Use Advanced Randomization to show 1 of the 5 random items, and show 2 items per page.

Resize option for Selected Dates across multiple months in FullCalendar

I just started using Full Calendar 4. Its awesome.
All things working great.
I am including a functionality to resize already selected dates across multiple months. For example, I select dates in April, and I want to continue my selection to 10th of May, But I think currently it is not possible.
I am trying to make it work like:
Click on next month, save current selected dates, by holding Ctrl or Shift keys, click on other dates and adding those dates to previous selected dates.
I went through new feature requests and issues, but this exact feature did not listed there.
Just curious to ask that if any other possible work around to this functionality or am I doing it right?

Gridview custom paging with full text search

"I want to implement Gridview custom paging with full text search, with each individual page being bound to only 10 results/records.
My current setup fetches all the search results (rows) on each button click but displays just 10, making it very resource intensive. If it is of any consequence, in my current pagination setup I have first, next, last and previous buttons beside the actual page numbers.
I would like to retain the same scheme but only have it fetch up to 10 results for each page and display as many at any given time.
Should I work on adapting this particular method:http://www.c-sharpcorner.com/UploadFile/99bb20/custom-paging-with-gridview-control-in-Asp-Net-4-5?
If yes, do you have any suggestions as to how i could go about doing so in my case? If not, please suggest some alternatives?"
To fetch all the data while populating the grid for the first time is not a correct approach I think.
Depending on the page number and number of data that needs to be fetched, you need to get only that data from the database by sending the page number and page size qith your query.
So, when you click on First, Next, Previous and Last you send the page number and page size and get the data from database by calculating the total number of records.
Hope this provided you with an alternative approach.
Thanks!!

How to get the back button and session state to work together?

There may be an easy answer to this and I just don't see it b/c I am too close to the project - so be it.
I have an asp.net 2.0 search application. It is a series of pages that start with a search form and end with the results being displayed to the user. Between the search and results page is a filter page that displays a series of filters the user can filter down the search results to. I execute the initial search on the search page and store the results in the session. If the initial search results total more than a certain number (let us say 50 for the sake of the example), the user is taken to the filters page. There they are presented with a number of filters they can apply to the results.
Once the selected filters have been applied to the search results, if the count is still more than 50 they stay on the page with only the filters they have not selected still displayed on the page. If the count is less than 50, they are taken to the results page. Now if they are on the filters page but wish to see the results, there is a button that takes the current state of the results and takes the user to the results page.
Here is my problem - if I am on the results page after applying some filters and click on the back button (none of the pages cache), how can i get the previous state of the search results BEFORE whatever filters I selected had been applied? Even further, if I got to the results page after a series of say 4 "apply filters" (apply filter - still over 50, apply other filter - still over 50, apply yet another filter - still over 50, and finally apply another filter - yay! under 50 go to results page), how do I get each version of the ever shrinking search results from the session if I keep hitting the back button?
Sorry if this is a bit weird and not that easy to understand - this is one of the problems that is not simple enough to just wrap it in a few simple sentences.
I am most eager for any thoughts (pertaining to the question at hand) or questions.
UPDATE -
FYI, I did not decide on the mult-page design. A requirement stated that it follow the flow of an existing third-party search app (reverse engineering is wonderful right?).
Thanks
Not to be too critical, but what you described sounds like a seriously jacked up way of handling search.
Typically, your search criteria and results are on the same page. When you modify the criteria and click search you should just display the top 50 results and let them know there are more. This can't be any more expensive an operation that what you've described because you have to run the queries under both circumstances anyway.
Take a look at NewEgg.com and try their "advanced search" from this page. You'll notice there are about 20 different criteria factors on the left. As you add a new criteria, the bread crumb at the top of the page changes. They have a little (x) next to each in the bread crumb so you can quickly eliminate any criteria from your search results. Voila no back button needed.
Note that at no point do you need session state to handle this. At most you could use hidden form fields which would still support back button usage in the browser, if they really wanted to.
Use your current session-based parameters as is, but let any querystring-parameter override them. This way you keep your values w/o assigning them to every url, yet adjusts to any previous manual data-enrty (querystrings in the browser-history).
(And don't use POST for search.)

How can I determine the "correct" number of steps in a questionnaire where branching is used?

I have a potential maths / formula / algorithm question which I would like help on.
I've written a questionnaire application in ASP.Net that takes people through a series of pages. I've introduced conditional processing, or branching, so that some pages can be skipped dependent on an answer, e.g. if you're over a certain age, you will skip the page that has Teen Music Choice and go straight to the Golden Oldies page.
I wish to display how far along the questionnaire someone is (as a percentage). Let's say I have 10 pages to go through and my first answer takes me straight to page 9. Technically, I'm now 90% of the way through the questionnaire, but the user can think of themselves as being on page 2 of 3: the start page (with the branching question), page 9, then the end page (page 10).
How can I show that I'm on 66% and not 90% when I'm on page 9 of 10?
For further information, each Page can have a number of questions on that can have one or more conditions on them that will send the user to another page. By default, the next page will be the next one in the collection, but that can be over-ridden (e.g. entire sets of pages can be skipped).
Any thoughts? :-s
Simple answer is you can't. From what you have said you won't know until you have reached the end how many pages the user is going to see so you can't actually display an accurate result.
What you could do to get a better result as in your example is to assume they are going through all the remaining pages. In this case you would on any page have:
Number of pages gone through so far including current (visited_pages)
Number of the current page (page_position)
Total number of pages (total_pages)
The maximum number of pages is now:
max_pages = total_pages - page_position + visited_pages
You can think of total_pages-page_position as being the number of pages left to visit which makes the max_pages quite intuitive.
So in the 10 page example you gave visited_pages = 2 (page 1 and page 9), page_position = 9 and total_pages = 10.
so max_pages = 10-9+2 = 3.
then to work out the distance through you just do
progress = visited_pages/max_pages*100
One thing to note is that if you were to go to pages 1,2,3,4,9,10 then your progress would be 10%,20%,30%,40%,83%,100% so you would still get a strange jump that may confuse people. This is pretty much inevitable though.
Logically unless the user's question graph is predetermined, you can not predetermine their percentage complete.
That being said.
What you can do is build a full graph of the users expected path based on what information you know: what questions they have completed, and what questions they have to take, and simply calculate a percentage.
This will probably involve a data structure such as a linked list to calculate where they have been, and what the user has left to complete, this implementation is up to you.
The major caveat here is you have to accept that if the users question graph changes, so will their percent completed. Theoretically they could display 90% and then it changes and they will display 50%.

Resources