This is for the nth time I am posting. Is there no one to help!

A

ani

I have a datalist control in my aspx page(this is
paginated and everytime submits to itself). I am calling a
function within my datalist that returns a html control
(radio button ) in the form of the string. I also have asp
server controls(labels) in the datalist. When the form is
processed, I am retrieving the values of the radio buttons
through Request.form. To retrieve the values of the asp
server controls , I am using FindControl method. But this
is written in the Page_Load method, so it returns the
values of the current page before the page gets submitted.
I want the values after the page gets submitted. How do I
retrieve them.
If I use onserverclick on my button (which is a html
control with rollover capability <a href>) , the onclick
doesn't work fine for validating the html controls. I
don't have runat=server on my form tag when I have onclick
attribute on the button. I am new to asp.net. I am not
able to use both onclick and onserverclick at the same
time. Why is it so..

Please help!!
 
C

Corey Wineman

Maybe you could post some code. Its hard to tell what your problem is from
you message which you have posted several times.
 
P

psb

sounds like you are not leveraging the page.postback property. page_load
gets called every time the page loads whether it is post back or not. the
onserverclicks will get loaded after page_load. sounds like you are loading
the datalist twice before doing a request.form on the data. you should only
build the datalist once. it will be in the viewstate on the postback, so no
need to reload it.

function page_load()
if page.ispostback then
'get checkbox values and labels or do nothing and rely on the
OnServerClick event
else
'load datalist
end if
end function

also if you want to use javascript onclick and asp.net's onserverclick do
this...
<input type="submit" id="btn" value="go" runat="server" onclick="return
validate();">

if you use <asp:button...>, the onclick event is looking for a public
function in the codebehind which default to private... not sure, but I have
to change that to public everytime.

again, without code samples, it is tough. I hope I helped a little bit.
~psb
 
A

ani

This is how the presentation code look like. If I use
runat = server, ie; when I try to use onserverclick on the
button the javascript doesn't work . The displayanswers
method in the form returns a string of html text,basically
a table with radiobuttons or checkboxes aligned in it.

<form id="frmQuestion" method="post" >

<ASP:DataList id="Questions" ShowHeader="false"
ShowFooter="false" runat="server" >
<ItemTemplate>
<TABLE ALIGN="left" >
<td>

<asp:Label runat="server" Text='<%# DataBinder.Eval
(Container.DataItem, "MainQuestion_ID")%> '
ID="QuestionID" NAME="QuestionID">
</asp:Label>

</td>

<td>

<asp:Label runat="server" Text='<%# DataBinder.Eval
(Container.DataItem, "MainQuestion_Txt")%>'
ID="QuestionTxt" NAME="QuestionTxt">
</asp:Label>

</td>

<td >

<%# DisplayAnswers(DataBinder.Eval
(Container.DataItem, "MainQuestion_ID"),DataBinder.Eval
(Container.DataItem, "QuestionTypeID")) %>

</td>
</tr></TABLE>
</ItemTemplate>
</ASP:DataList>

<table align=right >
<tr><td>

<a id=btnForward href="#"
onMouseOut="bforward.src='images/bforward.gif';"
onMouseOver="bforward.src='images/bforward_f2.gif';"
runat=server onclick="return validate();"><IMG
SRC="images/bforward.gif" ALT="" NAME="bforward"
ID="bforward" WIDTH="78" HEIGHT="24" BORDER="0"></A>

</td></tr></table>


I would like to retrieve the question id and the answer
(user-input) at the same time on click of the button. The
questionaire is paginated and this is the only form i am
using.

The code behind looks somewhat this way:

Sub Page_Load(ByVal Sender As Object, ByVal E As
EventArgs)


Dim oDt As DataTable
Dim oQuestion As Question ('This is the class
in my business layer)
oQuestion = New Question

Questions.DataSource = New DataView(oDt)
Questions.DataBind()



End Sub


What is the best way to handle Questionaire(online test)
projects . Can I display questions and answers at the same
time and how do I get questionid's and user-input to
insert into the database. There can be subquestions
 
A

ani

This is how the presentation code look like. If I use
runat = server, ie; when I try to use onserverclick on the
button the javascript doesn't work . The displayanswers
method in the form returns a string of html text,basically
a table with radiobuttons or checkboxes aligned in it.

<form id="frmQuestion" method="post" >

<ASP:DataList id="Questions" ShowHeader="false"
ShowFooter="false" runat="server" >
<ItemTemplate>
<TABLE ALIGN="left" >
<td>

<asp:Label runat="server" Text='<%# DataBinder.Eval
(Container.DataItem, "MainQuestion_ID")%> '
ID="QuestionID" NAME="QuestionID">
</asp:Label>

</td>

<td>

<asp:Label runat="server" Text='<%# DataBinder.Eval
(Container.DataItem, "MainQuestion_Txt")%>'
ID="QuestionTxt" NAME="QuestionTxt">
</asp:Label>

</td>

<td >

<%# DisplayAnswers(DataBinder.Eval
(Container.DataItem, "MainQuestion_ID"),DataBinder.Eval
(Container.DataItem, "QuestionTypeID")) %>

</td>
</tr></TABLE>
</ItemTemplate>
</ASP:DataList>

<table align=right >
<tr><td>

<a id=btnForward href="#"
onMouseOut="bforward.src='images/bforward.gif';"
onMouseOver="bforward.src='images/bforward_f2.gif';"
runat=server onclick="return validate();"><IMG
SRC="images/bforward.gif" ALT="" NAME="bforward"
ID="bforward" WIDTH="78" HEIGHT="24" BORDER="0"></A>

</td></tr></table>


I would like to retrieve the question id and the answer
(user-input) at the same time on click of the button. The
questionaire is paginated and this is the only form i am
using.

The code behind looks somewhat this way:

Sub Page_Load(ByVal Sender As Object, ByVal E As
EventArgs)


Dim oDt As DataTable
Dim oQuestion As Question ('This is the class
in my business layer)
oQuestion = New Question

Questions.DataSource = New DataView(oDt)
Questions.DataBind()



End Sub


What is the best way to handle Questionaire(online test)
projects . Can I display questions and answers at the same
time and how do I get questionid's and user-input to
insert into the database. There can be subquestions
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

No members online now.

Forum statistics

Threads
473,744
Messages
2,569,484
Members
44,903
Latest member
orderPeak8CBDGummies

Latest Threads

Top