|
Hey,
u have mistaken..
Not here..
In Javascript write function...
Call only a single function from codebehind...
But make difference in Javascript...
Got it ?
Thanks,
Sun Rays
To get something you must have to try once.
My Articles
|
|
|
|
|
Is it possible to call 2 javascript function on a checkbox in a grid on onclick event.one is onclick="return Select(this);" .if possible to call another javascript function on the same onclick event..
|
|
|
|
|
Hi
This could help.
<br />
<br />
function select_deselectAll (chkVal, idVal)<br />
{<br />
var frm = document.forms[0];<br />
for (i=0;i< frm.length; i++)<br />
{<br />
if (idVal.indexOf ('CheckAll') != -1)<br />
{<br />
if(chkVal == true)<br />
{<br />
frm.elements[i].checked = true;<br />
}<br />
else<br />
{<br />
frm.elements[i].checked = false;<br />
}<br />
}<br />
else if (idVal.indexOf ('DeleteThis') != -1)<br />
{<br />
if (frm.elements[i].checked == false)<br />
{<br />
frm.elements[1].checked = false;<br />
}<br />
}<br />
}<br />
}<br />
function confirmDelete (frm)<br />
{<br />
for (i=0; i<frm.length; i++)<br="" mode="hold" /> {<br />
if (frm.elements[i].name.indexOf("DeleteThis") !=-1)<br />
{<br />
if(frm.elements[i].checked)<br />
{<br />
return confirm ('Are you sure you want to delete your selection(s)?')<br />
}<br />
}<br />
}<br />
}<br />
<br />
<br />
<asp:datagrid id="MyDataGrid" runat="server" width="700" backcolor="white" bordercolor="black"><br />
CellPadding="3" CellSpacing="0" Font-Size="9pt" AutoGenerateColumns="False" HeaderStyle-BackColor="darkred" HeaderStyle-ForeColor="white"><br />
< Columns><br />
< asp:TemplateColumn><br />
< HeaderTemplate><br />
< asp:CheckBox ID="CheckAll" OnCheckedChanged="javascript: return select_deselectAll (this.checked,this.id);" runat="server" /><br />
< font face="Webdings" color="white" size="4">< /font><br />
< /HeaderTemplate><br />
< ItemTemplate><br />
< asp:CheckBox ID="DeleteThis" OnCheckedChanged="javascript: return select_deselectAll (this.checked, this.id);" runat="server" /><br />
< /ItemTemplate><br />
< /asp:TemplateColumn><br />
< asp:TemplateColumn><br />
< HeaderTemplate><br />
ID<br />
< /HeaderTemplate><br />
< ItemTemplate><br />
< asp:Label ID="StoreID" Text='< %# DataBinder.Eval (Container.DataItem, "ID") %>' runat="server"/><br />
< /ItemTemplate><br />
< /asp:TemplateColumn><br />
< asp:BoundColumn HeaderText="Store" Datafield="Store" runat="server" /><br />
< asp:BoundColumn HeaderText="Address" Datafield="Address" runat="server" /><br />
< asp:BoundColumn HeaderText="City" Datafield="City" runat="server" /><br />
< asp:BoundColumn HeaderText="State" Datafield="State" runat="server" /><br />
< asp:BoundColumn HeaderText="Zip" Datafield="Zip" runat="server" /><br />
< /Columns><br />
< /ASP:DataGrid><br />
<br />
<br />
< asp:Button Text="Delete Items" OnClick="DeleteStore" ID="Confirm" runat="server" /><br />
< span id="OutputMsg" runat="server" /><br />
<br />
public void DeleteStore (Object sender, EventArgs e)<br />
{<br />
string dgIDs = "";<br />
bool BxsChkd = false;<br />
foreach (DataGridItem i in MyDataGrid.Items)<br />
{<br />
CheckBox deleteChkBxItem = (CheckBox) i.FindControl ("DeleteThis");<br />
if (deleteChkBxItem.Checked)<br />
{<br />
BxsChkd = true;<br />
dgIDs += ((Label) i.FindControl ("StoreID")).Text.ToString() + ",";<br />
}<br />
}<br />
string deleteSQL = "DELETE from Stores WHERE stor_id IN (" + dgIDs.Substring (0, dgIDs.LastIndexOf (",")) + ")";<br />
if (BxsChkd == true)<br />
{<br />
try<br />
{<br />
SqlHelper.ExecuteNonQuery (objConnect, CommandType.Text, deleteSQL);<br />
}<br />
catch (SqlException err)<br />
{<br />
}<br />
BindData();<br />
}<br />
}</asp:datagrid>
People Laugh on me Because i am
Different but i Laugh on them
Because they all are same.
|
|
|
|
|
Hi,
I have an appln where in i need to create, text boxes and drop downlists dynamically, the issue here is, how do i retreive the text stored in text box and value selected in the combo.
Thanks in advance
|
|
|
|
|
Just like you normally would. Creating the controls dynamically doesn't change how you access the properties.
"Real programmers just throw a bunch of 1s and 0s at the computer to see what sticks" - Pete O'Hanlon
|
|
|
|
|
but i am unable to refer to the text property for textboxes,
here is how my code goes, to create control
Dim fldMetadata As TextBox
fldMetadata = New TextBox
fldMetadata.ID = "txtID"
Panel1.Controls.Add(fldMetadata)
I refer to the controls like this,
Dim ctrl As Control
For Each ctrl In Panel1.Controls
If ctrl.ID Like "txtID" Then
'Here i should be able to refer to the control's text property
End If
Next
thanks
|
|
|
|
|
You then should be able to do ctrl.Text=".... "
"Real programmers just throw a bunch of 1s and 0s at the computer to see what sticks" - Pete O'Hanlon
|
|
|
|
|
Paul Conrad wrote: You then should be able to do ctrl.Text=".... "
a cast is needed I guess
|
|
|
|
|
N a v a n e e t h wrote: a cast is needed I guess
Not really. I just tried it and works fine here.
"Real programmers just throw a bunch of 1s and 0s at the computer to see what sticks" - Pete O'Hanlon
|
|
|
|
|
Paul Conrad wrote: Not really. I just tried it and works fine here.
I think I miss something. But I am unable to get Text property for Control instance as you told.
|
|
|
|
|
I made a mistake by doing a winform and not a webform You can get it in a winform but not webform.
"Real programmers just throw a bunch of 1s and 0s at the computer to see what sticks" - Pete O'Hanlon
|
|
|
|
|
Thanks, I have tried out, but there is no such property
|
|
|
|
|
Anuradha612 wrote: For Each ctrl In Panel1.Controls
If ctrl.ID Like "txtID" Then
'Here i should be able to refer to the control's text property
TextBox txt = (TextBox)ctrl;
Now use txt for getting the textbox properties.
|
|
|
|
|
Anuradha612 wrote: how do i retreive the text stored in text box and value selected in the combo.
Adding to Paul's post, are you getting some problem when retrieving value ? If you are not getting the value entered, check the event where you create dynamic controls. It should be before ASP.NET loads the viestate . Init would be appropriate for dynamic controls.
|
|
|
|
|
Yes, i am unable to retreive the value entered, Pls can you be more clear, with the last post, i am unable to understand,
|
|
|
|
|
This is a viewstate issue. Hope you know about viewstates . It's mechanism used to keep data across postbacks. For solving the problem, override oninit event and add your controls over there. Then ASP.NET will maintain viewstate for the control and you can get it from Controls collection.
|
|
|
|
|
Hi
You are dynamically created textbox like this.
Dim fldMetadata As TextBox<br />
fldMetadata = New TextBox<br />
fldMetadata.ID = "txtID"<br />
Panel1.Controls.Add(fldMetadata)<br />
There should be number of text box.
When u creating the control dynamically the u cannot specify same id
to all control. u have assign unique id to all textbox in page which u
create dynamically.
R u creating control dynamically in for loop?
Can u paste code here?
Regards.
Rahul
People Laugh on me Because i am Different but i Laugh on them Because they all are same.
|
|
|
|
|
rahul.net11 wrote: Can u paste code here?
He did, in his second post[^] in the thread.
"Real programmers just throw a bunch of 1s and 0s at the computer to see what sticks" - Pete O'Hanlon
|
|
|
|
|
Look at this example
I create two textboxes and dropdownlist on page load event.
I have one Button and one placeholder on the page.
On page load event,add all dynamically created in place holder and on button click event, I get values of the textboxes and selected value of dropdownlist.
protected void Page_Load(object sender, EventArgs e)<br />
{<br />
CreateControls(); <br />
}<br />
public void CreateControls()<br />
{<br />
TextBox MyTxt1=new TextBox();<br />
MyTxt1.ID = "MyTxt1";<br />
TextBox MyTxt2 = new TextBox();<br />
MyTxt2.ID = "MyTxt2";<br />
DropDownList MyDDL1 = new DropDownList();<br />
MyDDL1.ID = "MyDDL1";<br />
MyDDL1.Items.Add(new ListItem("1", "1"));<br />
MyDDL1.Items.Add(new ListItem("2", "2"));<br />
DropDownList MyDDL2 = new DropDownList();<br />
MyDDL2.ID = "MyDDL2";<br />
MyDDL2.Items.Add(new ListItem("1", "1"));<br />
MyDDL2.Items.Add(new ListItem("2", "2"));<br />
<br />
PL.Controls.Add(MyTxt1);<br />
PL.Controls.Add(MyTxt2);<br />
PL.Controls.Add(MyDDL1);<br />
PL.Controls.Add(MyDDL2);<br />
<br />
}<br />
protected void MyButton_Click(object sender, EventArgs e)<br />
{<br />
string myText1 = ((TextBox)this.Page.FindControl("MyTxt1")).Text;<br />
string myText2 = ((TextBox)this.Page.FindControl("MyTxt2")).Text;<br />
string myDDL1 = ((DropDownList)this.Page.FindControl("MyDDL1")).SelectedValue;<br />
string myDDL2 = ((DropDownList)this.Page.FindControl("MyDDL2")).SelectedValue;<br />
Response.Write("Value 1 : " + myText1 + "<br />Value 2: " + myText2 + "<br />Value 3 :" + myDDL1 + "<br />Value 4: " + myDDL2);<br />
}
please don't forget to vote on the post that helped you.
|
|
|
|
|
Why the example in C#? The OP posted his code and he was doing it in VB. See his second post[^] in the thread...
"Real programmers just throw a bunch of 1s and 0s at the computer to see what sticks" - Pete O'Hanlon
|
|
|
|
|
how to retrive image from database change automatically into time interval
sg
|
|
|
|
|
Rephrase your question, it makes little or no sense.
"Real programmers just throw a bunch of 1s and 0s at the computer to see what sticks" - Pete O'Hanlon
|
|
|
|
|
Hi,
I have weird issue with nested data grids. I have a data grid with one template column. Inside template column I have another data grid. I am finding second datagrid control on first datagrids item_databound event and binding it. Everything works fine. But I have 3 hyperlink buttons in the child grid which I am not able to find out.
These are the things what I did
1 - Main grids item_databound event finding child grid and casting.
2 - Attaching item_databound event for child datagrid
3 - In child datagrids item_databound event, trying to find the hyper links like e.Item.FindControl() and cast to HyperLink type.
I am getting null reference exception in step 3. I tried iterating through the Controls collection for the Item. It is showing all the HyperLink's. But I am unable to find it and cast it. I have viewstate turned on in the page. Any idea's ?
|
|
|
|
|
Hi man,
I think you might put the event handler of child grid after binding. I have tested and it works fine..
HTML
====
<![CDATA[<%@ Page language="c#" Codebehind="WebForm1.aspx.cs" AutoEventWireup="false" Inherits="WebApplication4.WebForm1" %>]]>
<html>
<head>
<title>WebForm1</title>
<meta name="GENERATOR" content="Microsoft Visual Studio .NET 7.1">
<meta name="CODE_LANGUAGE" content="C#">
<meta name="vs_defaultClientScript" content="JavaScript">
<meta name="vs_targetSchema" content="http://schemas.microsoft.com/intellisense/ie5">
</meta></meta></meta></meta></head>
<body ms_positioning="GridLayout">
<form id="Form1" method="post" runat="server">
<asp:datagrid id="DataGrid1" style="Z-INDEX: 101; LEFT: 8px; POSITION: absolute; TOP: 8px" runat="server">
<columns>
<asp:boundcolumn datafield="C1"></asp:boundcolumn>
<asp:boundcolumn datafield="C2"></asp:boundcolumn>
<asp:templatecolumn>
<itemtemplate>
<asp:datagrid id="DataGrid2" runat="server">
<columns>
<asp:boundcolumn datafield="C1"></asp:boundcolumn>
<asp:templatecolumn>
<itemtemplate>
<asp:hyperlink navigateurl="http://michaelsync.net" id="hypLink" runat="server">
<%# DataBinder.Eval(Container, "DataItem.C2") %>
</asp:hyperlink>
</itemtemplate>
</asp:templatecolumn>
</columns>
</asp:datagrid>
</itemtemplate>
</asp:templatecolumn>
</columns>
</asp:datagrid>
</form>
</body>
</html>
Code-behinded file
==================
protected System.Web.UI.WebControls.DataGrid DataGrid1;
private void Page_Load(object sender, System.EventArgs e)
{
// Put user code to initialize the page here
DataGrid1.ItemDataBound +=new DataGridItemEventHandler(DataGrid1_ItemDataBound);
DataGrid1.DataSource = getDataTable();
DataGrid1.DataBind();
}
private DataTable getDataTable()
{
DataSet ds = new DataSet();
DataTable dt = new DataTable();
dt.Columns.Add("C1" );
dt.Columns.Add("C2");
ds.Tables.Add(dt);
for(int i=0; i<5;i++)
{
DataRow dr = dt.NewRow();
dr[0] = i.ToString();
dr[1] = "C2" + i.ToString();
dt.Rows.Add(dr);
}
return dt;
}
DataGrid dg = new DataGrid();
private void DataGrid1_ItemDataBound(object sender, DataGridItemEventArgs e)
{
dg = (DataGrid)e.Item.FindControl("DataGrid2");
if(dg != null)
{
dg.ItemDataBound +=new DataGridItemEventHandler(dg_ItemDataBound);
dg.DataSource = getDataTable();
dg.DataBind();
}
}
private void dg_ItemDataBound(object sender, DataGridItemEventArgs e)
{
HyperLink hlink = (HyperLink)e.Item.FindControl("hypLink");
if(hlink != null)
{
hlink.ForeColor= System.Drawing.Color.Red;
}
}
Thanks and Regards,
Michael Sync ( Blog: http://michaelsync.net)
|
|
|
|
|
Michael Sync wrote: <%# DataBinder.Eval(Container, "DataItem.C2") %>
this is not like.. CP can't parse the code correctly..
<%# DataBinder.Eval(Container, "DataItem.C2") %>
|
|
|
|