Solved

get the value of DIV in code behind

Posted on 2011-03-09
11
1,098 Views
Last Modified: 2012-05-11
I am getting Facebook User ID by following script code. I am binding it to the Div.
Now I wanted to save it in string and store in database. When I create a div as a server control then I didn't get the user ID.
How can I get the div value in string in code behind page.

<script>
 var id = document.getElementById('id')
                     id.innerHTML = user.id
</script>


<div id="id" ></div>
0
Comment
Question by:Manoj Patil
  • 6
  • 4
11 Comments
 
LVL 9

Expert Comment

by:jkofte
ID: 35092229
it must have runat = "server" and in js, use ClientID to get the clientside ID of the div.
so your code will be like this:

<script>
 var id = document.getElementById('<%=Div1.ClientID%>').innerHTML = user.id;
</script>
<div id="Div1" runat="server" ></div>

Open in new window


this way in code behind you can use:

Div1.innetHTML = "HTML CODE"

Open in new window

0
 
LVL 19

Author Comment

by:Manoj Patil
ID: 35092390
Thanks jkofte,

I have done the way you explained. I have created div as server control.
But in code behind how can I get the value in string..???

You have written Div1.innerHTML="HTML CODE"  ........I didn't understand.
0
 
LVL 9

Expert Comment

by:gery128
ID: 35092640
make your DIV server control first, by putting property runat="server" .
for example:  <div id="myContentDiv" runat="server" />

than you can access it in code-behind (cs/vb file) just like another controls.

like in C#:
string userId = myContentDiv.InnerHTML;

What are you using ? A web application or a web site project of ASP.NET?
0
 
LVL 19

Author Comment

by:Manoj Patil
ID: 35092887
I have tried following code. I am using website Project of ASP.NET
string getID = id.InnerHtml;
string getID1=id.InnerText;

still i got null value
0
 
LVL 9

Expert Comment

by:gery128
ID: 35093213
On which event you are attempting to access Div's value. It may be possible that, the values is not assigned yet and you are accessing it through code-behind.

Div value should be assigned first with JS and than it will be accessible in server side code. So check the event and when the Div value is set in javascript.

Can you post some code here ?  
0
How to improve team productivity

Quip adds documents, spreadsheets, and tasklists to your Slack experience
- Elevate ideas to Quip docs
- Share Quip docs in Slack
- Get notified of changes to your docs
- Available on iOS/Android/Desktop/Web
- Online/Offline

 
LVL 19

Author Comment

by:Manoj Patil
ID: 35093284
I have a buton for login with facebook. When I logged in with facebook then I got user ID , Email, Profile Picture, Birthday through JavaScript and In Javascript. I am assigning the values to the div and those values are display also. And on Button Click I am getting the Values in Code Behind

 <script type="text/javascript">
             FB.init({
                 appId: '109418582471189', cookie: true,
                 status: true, xfbml: true
             });
             FB.api('/me', function Test (user) {
                 if (user != null) {
                    var id = document.getElementById('<%=Fid.ClientID%>').innerHTML = user.id;
}});
</script>

<div align="center">
           <table><tr><td> FBID=</td><td><div id="Fid" runat="server"></div></td></tr></table>
          <asp:Button ID="Button1" runat="server" Text="Button" OnClientClick="Test()" onclick="Button1_Click" />
          </div>

Open in new window


In Code Behind

 
protected void Button1_Click(object sender, EventArgs e)
    {
        String gs = Fid.Value;
    }

Open in new window

0
 
LVL 9

Expert Comment

by:gery128
ID: 35094063
You are assigning the value to DIV before defining it in markup.
Move your script to after the DIV markup so it can assign value to it.
0
 
LVL 9

Expert Comment

by:gery128
ID: 35094802
techChallenger1, I tried with ASP.NET 2.0 website, yes, you are correct, its behaving strange. While Hidden field worked perfectly in this case. I set value through javascript and accessed through my server side code. But Div did not behave normal in that case. I also set enableviewstat property of DIV to true.
Even SPAN tag behaved same way like DIV tag.
0
 
LVL 19

Author Comment

by:Manoj Patil
ID: 35096835
I have tried a many ways.

Is there any other way to do this.......???

0
 
LVL 19

Accepted Solution

by:
Manoj Patil earned 0 total points
ID: 35105596
Hello,
I have change the Business Logic. Now I am creating a session through JavaScript. And this works for me.  Because from the previous way I didn't find the solution.
0
 
LVL 19

Author Closing Comment

by:Manoj Patil
ID: 35135967
Changed code is working.............
0

Featured Post

How to run any project with ease

Manage projects of all sizes how you want. Great for personal to-do lists, project milestones, team priorities and launch plans.
- Combine task lists, docs, spreadsheets, and chat in one
- View and edit from mobile/offline
- Cut down on emails

Join & Write a Comment

Building a website can seem like a daunting task to the uninitiated but it really only requires knowledge of two basic languages: HTML and CSS.
Not sure what the best email signature size is? Are you worried about email signature image size? Follow this best practice guide.
In this tutorial viewers will learn how to position items using CSS's three positioning types Create a new HTML document with an internal stylesheet.: Create another div in CSS and name it Absolute : Type "position:absolute;" and "top:10px; left:50p…
In this tutorial viewers will learn how to style elements, such a divs, with a "drop shadow" effect using the CSS box-shadow property Start with a normal styled element, such as a div.: In the element's style, type the box shadow property: "box-shad…

708 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

15 Experts available now in Live!

Get 1:1 Help Now