Solved

jQuery Toolkit & ASP.NET postback

Posted on 2010-11-29
3
591 Views
Last Modified: 2012-05-10
Dear Experts,

I'm using a snippet of jQuery to reveal a notes box on an ASP.NET application page, but when I post the page back, I lose the state of the box and it appears with its raw controls.

Could anybody suggest a way to maintain the state of the box when the page is posted back.  Here is the code I'm using:


jQuery(document).ready(function ($) {



        $("#note-content").expandable({ // all available options:

            startopen: false,

            title: "Quick Notes Panel",

            uiIconClosed: "icon-closed",

            uiIconOpen: "icon-open",

            animationClose: { height: "hide" },

            animationOpen: { height: "show" },

            open: function (event, options) {

            },

            close: function (event, options) {

            }

        });









  <asp:PlaceHolder ID="plcQuickNote" Visible="false" runat="server">

            <div id="note-content" class="note_float">

                <div class="top-5-notes">

                    <asp:Literal ID="litLast5Notes" runat="server"></asp:Literal>

                </div>

                <div class="rest-notes">

                <asp:Literal Visible="false" ID="litResult" runat="server"></asp:Literal></div>

                <GAC:StdTextBox Font-Size="11px" TextMode="MultiLine" Rows="4" Width="218px" ID="txtNoteBox"

                    runat="server"></GAC:StdTextBox><asp:ImageButton ID="ibNoteSubmit" ImageUrl="~/img/save_quick_note.gif"

                        runat="server" />

                <asp:ImageButton ID="ibRefresh" ImageUrl="~/img/refresh_only.gif" Visible="false"

                    runat="server" />

                    

            </div>

        </asp:PlaceHolder>

Open in new window

0
Comment
Question by:nkewney
3 Comments
 
LVL 19

Assisted Solution

by:Bardobrave
Bardobrave earned 150 total points
Comment Utility
You can post the state back to your server with the rest of the data, and return it to client code into a hidden input where your jquery can read the current state it should use.
0
 
LVL 14

Assisted Solution

by:ddsh79
ddsh79 earned 150 total points
Comment Utility
to store the state you can use cookies. jquery has cookies plugin available.
0
 
LVL 20

Accepted Solution

by:
Proculopsis earned 200 total points
Comment Utility

You can transmit the state in your code behind via an attribute on the div:

<div id="note-content" state="open"...

and pick it up with:

$("#note-content").attr("state")

0

Featured Post

Top 6 Sources for Identifying Threat Actor TTPs

Understanding your enemy is essential. These six sources will help you identify the most popular threat actor tactics, techniques, and procedures (TTPs).

Join & Write a Comment

Problem Hi all,    While many today have fast Internet connection, there are many still who do not, or are connecting through devices with a slower connect, so light web pages and fast load times are still popular.    If your ASP.NET page …
The task A number given should be formatted for easy reading by separating digits into triads. Format must be made inline via JavaScript, i.e., frameworks / functions are not welcome. So let’s take a number like this “12345678.91¿ and format i…
The viewer will learn the basics of jQuery, including how to invoke it on a web page. Reference your jQuery libraries: (CODE) Include your new external js/jQuery file: (CODE) Write your first lines of code to setup your site for jQuery.: (CODE)
The viewer will learn the basics of jQuery including how to code hide show and toggles. Reference your jQuery libraries: (CODE) Include your new external js/jQuery file: (CODE) Write your first lines of code to setup your site for jQuery…

771 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

10 Experts available now in Live!

Get 1:1 Help Now