Hi,
I am using the radtagcloud control, but when I click an item, I want to invoke Javascript (The following):
Any ideas how much appreciated!
Thanks
I am using the radtagcloud control, but when I click an item, I want to invoke Javascript (The following):
function openWin(Url) {I currently invoke this code to open radwindows with content, on my site. This is from an ASP.NET button, though (OnClientClick). I need to do the same, via the tagcloud control.
var oWnd = radopen(Url, "RadWindow4");
oWnd.moveTo(50, 200);
}
Any ideas how much appreciated!
Thanks
6 Answers, 1 is accepted
0
Hello,
You should use the OnClientItemClicking event for this purpose. Here is a sample:
Greetings,
Pero
the Telerik team
You should use the OnClientItemClicking event for this purpose. Here is a sample:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<
html
xmlns
=
"http://www.w3.org/1999/xhtml"
>
<
head
runat
=
"server"
>
<
title
></
title
>
<
telerik:RadStyleSheetManager
ID
=
"RadStyleSheetManager1"
runat
=
"server"
/>
</
head
>
<
body
>
<
form
id
=
"form1"
runat
=
"server"
>
<
telerik:RadScriptManager
ID
=
"RadScriptManager1"
runat
=
"server"
>
</
telerik:RadScriptManager
>
<
script
type
=
"text/javascript"
>
function OnClientItemClicking(button, args)
{
openWin("http://www.telerik.com");
args.set_cancel(true);
}
function openWin(Url)
{
var oWnd = radopen(Url, "RadWindow4");
oWnd.moveTo(50, 200);
}
</
script
>
<
telerik:RadWindowManager
ID
=
"manager1"
runat
=
"server"
>
</
telerik:RadWindowManager
>
<
div
>
<
asp:Label
ID
=
"Label1"
runat
=
"server"
></
asp:Label
>
</
div
>
<
telerik:RadTagCloud
ID
=
"TagCloud1"
runat
=
"server"
Width
=
"400px"
OnClientItemClicking
=
"OnClientItemClicking"
>
<
Items
>
<
telerik:RadTagCloudItem
Text
=
"ASP.NET"
Weight
=
"12"
/>
<
telerik:RadTagCloudItem
Text
=
"AJAX"
Weight
=
"134"
/>
<
telerik:RadTagCloudItem
Text
=
"VB"
Weight
=
"56"
/>
<
telerik:RadTagCloudItem
Text
=
"Object"
Weight
=
"85.6"
/>
</
Items
>
</
telerik:RadTagCloud
>
</
form
>
</
body
>
</
html
>
Greetings,
Pero
the Telerik team
Browse the vast support resources we have to jump start your development with RadControls for ASP.NET AJAX. See how to integrate our AJAX controls seamlessly in SharePoint 2007/2010 visiting our common SharePoint portal.
0
G S S
Top achievements
Rank 1
answered on 03 Feb 2011, 01:40 AM
Hi,
That looks good, but the problem is, I need if/else logic to deduce which tag item was clicked, e:g:
function OnClientItemClicking(button, args)
{
if (args.ItemName="telerik"){
openWin("http://www.telerik.com");
args.set_cancel(true);
}
else if (args.ItemName = "something else") ....
}
Is this possible? I don't know the members of the args class. Could you please advise?
Thanks
0
Hello,
args.get_item() will get a reference to the item that was clicked. The TagCloud item on the other hand has methods and properties for getting the text and navigateUrl set to the current item.
Here is the modified code that uses different urls:
Regards,
Pero
the Telerik team
args.get_item() will get a reference to the item that was clicked. The TagCloud item on the other hand has methods and properties for getting the text and navigateUrl set to the current item.
Here is the modified code that uses different urls:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<
html
xmlns
=
"http://www.w3.org/1999/xhtml"
>
<
head
runat
=
"server"
>
<
title
></
title
>
</
head
>
<
body
>
<
form
id
=
"form1"
runat
=
"server"
>
<
telerik:RadScriptManager
ID
=
"RadScriptManager1"
runat
=
"server"
>
</
telerik:RadScriptManager
>
<
script
type
=
"text/javascript"
>
function OnClientItemClicking(button, args)
{
var itemClicked = args.get_item();
alert("Text: " + itemClicked.get_text() + " URL: " + itemClicked.get_navigateUrl());
openWin(itemClicked.get_navigateUrl());
args.set_cancel(true);
}
function openWin(Url)
{
var oWnd = radopen(Url, "RadWindow4");
oWnd.moveTo(50, 200);
}
</
script
>
<
telerik:RadWindowManager
ID
=
"manager1"
runat
=
"server"
>
</
telerik:RadWindowManager
>
<
div
>
<
asp:Label
ID
=
"Label1"
runat
=
"server"
></
asp:Label
>
</
div
>
<
telerik:RadTagCloud
ID
=
"TagCloud1"
runat
=
"server"
Width
=
"400px"
OnClientItemClicking
=
"OnClientItemClicking"
>
<
Items
>
<
telerik:RadTagCloudItem
Text
=
"ASP.NET"
Weight
=
"12"
NavigateUrl
=
"http://www.asp.net"
/>
<
telerik:RadTagCloudItem
Text
=
"Google"
Weight
=
"34"
NavigateUrl
=
"http://www.google.com"
/>
<
telerik:RadTagCloudItem
Text
=
"Telerik"
Weight
=
"134"
NavigateUrl
=
"http://www.telerik.com"
/>
<
telerik:RadTagCloudItem
Text
=
"Yahoo"
Weight
=
"56"
NavigateUrl
=
"http://www.yahoo.com"
/>
<
telerik:RadTagCloudItem
Text
=
"Wiki"
Weight
=
"85.6"
NavigateUrl
=
"http://en.wikipedia.com"
/>
</
Items
>
</
telerik:RadTagCloud
>
</
form
>
</
body
>
</
html
>
Regards,
Pero
the Telerik team
Browse the vast support resources we have to jump start your development with RadControls for ASP.NET AJAX. See how to integrate our AJAX controls seamlessly in SharePoint 2007/2010 visiting our common SharePoint portal.
0
Jack
Top achievements
Rank 2
answered on 19 May 2015, 01:03 PM
This is close to what I need - but how do I pass the id of the row to the URL please?
Cheers,
Jon
0
Jack
Top achievements
Rank 2
answered on 18 Nov 2015, 10:12 AM
Hi again guys....is this even possible please?
I want to pass the id of the item to radwindow
Cheers
Jack
0
Jack
Top achievements
Rank 2
answered on 18 Nov 2015, 11:38 AM
Just did it...
Set the NavigateUrl to the ID data column and then split the resultant navigateURL using 'pieces' to get the id
DataNavigateUrlField="bsid"
<telerik:RadCodeBlock ID=
"rcb1"
runat=
"server"
>
<script type=
"text/javascript"
>
function
OnClientItemClicking(button, args) {
var
_title = args.get_item().get_text();
//set the navigate url to the id column
var
_url = args.get_item().get_navigateUrl();
//split the resultant navigate url into array
var
pieces = _url.split(/[\s\/]+/);
var
window = $find(
'<%= rwShowBS.ClientID %>'
);
//use pieces to extract the last item (id)
window.setUrl(
"../../modals/brainr.aspx?id="
+ pieces[pieces.length-1]);
window.set_title(
"quozr.com : "
+ _title);
window.show();
args.set_cancel(
true
);
}
function
OnClientClose(oWnd) {
oWnd.setUrl(
""
);
// Sets url to blank
}
</script>
</telerik:RadCodeBlock>
Cheers,
Jack