protected
void
Button1_Click(
object
sender, EventArgs e)
{
RadGrid grid = (
this
.FindControl(
"RadGrid1"
)
as
RadGrid);
if
(grid.MasterTableView.IsItemInserted)
{
(grid.MasterTableView.GetItems(GridItemType.CommandItem)[0]
as
GridCommandItem).FireCommandEvent(RadGrid.PerformInsertCommandName,
string
.Empty);
}
else
if
(grid.EditItems.Count > 0)
{
grid.EditItems[0].FireCommandEvent(RadGrid.UpdateCommandName,
string
.Empty);
}
else
{
(grid.MasterTableView.GetItems(GridItemType.Item)[0]
as
GridDataItem).FireCommandEvent(RadGrid.DeleteCommandName,
string
.Empty);
}
}
<%@ Page Language="vb" AutoEventWireup="false" CodeBehind="Default.aspx.vb" Inherits="WebApplication1._Default" %>
<!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
>
<
script
type
=
"text/javascript"
src
=
"js/jquery-1.8.3.js"
></
script
>
<
script
type
=
"text/javascript"
>
// $(document).ready(function() {
// if (!$telerik.$ == true)
// $telerik.$ = jQuery;
// });
function OnClientValidationFailed(sender, args) {
var fileExtention = args.get_fileName().substring(args.get_fileName().lastIndexOf('.') + 1, args.get_fileName().length);
if (args.get_fileName().lastIndexOf('.') != -1) {//this checks if the extension is correct
// if (sender.get_allowedFileExtensions().indexOf(fileExtention)) {
// alert(args.get_message());
// alert("Wrong Extension!");
// }
// else {
// alert("Wrong file size!");
// }
alert("File is over the limit or extension is not allowed.");
}
else {
alert("not correct extension!");
}
}
// var $ = $telerik.$;
function OnClientFileUploadFailed(sender, args) {
if (args.get_message() == "error") {
args.set_handled(true);
}
}
function submitPage() {
//finds all file uploads that are currently in progress
var isUploadComplete = true;
var uploadingRows = $(".RadAsyncUpload").find(".ruUploadProgress");
//iterates and checks is there any file uploads that are successfully completed or failed and if yes - pop-up an alert box and prevent page submitting
for (var i = 0; i <
uploadingRows.length
; i++) {
if (!$(uploadingRows[i]).hasClass("ruUploadCancelled") && !$(uploadingRows[i]).hasClass("ruUploadFailure") && !$(uploadingRows[i]).hasClass("ruUploadSuccess")) {
alert("you could not submit the page during upload :)");
isUploadComplete
=
false
;
break;
}
}
return isUploadComplete;
}
</script>
</
head
>
<
body
>
<
form
id
=
"form1"
runat
=
"server"
>
<
div
>
<%-- <
telerik:RadScriptBlock
runat
=
"server"
ID
=
"RadScriptBlock1"
>
<
script
type
=
"text/javascript"
>
Telerik.Web.UI.RadAsyncUpload.Modules.Silverlight.isAvailable = function() { return false; };
Telerik.Web.UI.RadAsyncUpload.Modules.Flash.isAvailable = function() { return false; };
</
script
>
</
telerik:RadScriptBlock
>--%>
<
telerik:RadScriptManager
ID
=
"RadScriptManager1"
runat
=
"server"
>
</
telerik:RadScriptManager
>
<
telerik:RadAsyncUpload
ID
=
"ruReady"
runat
=
"server"
TemporaryFolder
=
"TempUpload"
MaxFileInputsCount
=
"5"
TemporaryFileExpiration
=
"02:00:00"
MaxFileSize
=
"105906176"
PostbackTriggers
=
"LinkButton2"
OnClientValidationFailed
=
"OnClientValidationFailed"
OnClientFileUploadFailed
=
"OnClientFileUploadFailed"
MultipleFileSelection
=
"Automatic"
></
telerik:RadAsyncUpload
>
<
asp:LinkButton
ID
=
"LinkButton1"
runat
=
"server"
>Test</
asp:LinkButton
>
<
asp:LinkButton
ID
=
"LinkButton2"
runat
=
"server"
OnClientClick
=
"return submitPage();"
>Test2</
asp:LinkButton
>
</
div
>
<
br
/>
<
asp:Literal
ID
=
"litPath"
runat
=
"server"
></
asp:Literal
>
</
form
>
</
body
>
</
html
>
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
Dim strUploadPath = Server.MapPath("~/TestUpload/")
litPath.Text = strUploadPath
End Sub
Protected Sub FileUploaded() Handles ruReady.FileUploaded
'nothing here at the moment
End Sub
Protected Sub LinkButton2_Click(ByVal sender As Object, ByVal e As EventArgs) Handles LinkButton2.Click
If Page.IsPostBack Then
UploadFile(ruReady, 1)
End If
End Sub
Private Sub UploadFile(ByVal AsyncUpload As Telerik.Web.UI.RadAsyncUpload, ByVal iID As Long)
'Dim strUploadPath = "E:\AsyncUploadApp\WebApplication1\WebApplication1\TestUpload\"
Dim strUploadPath = Server.MapPath("~/TestUpload/")
If AsyncUpload.UploadedFiles.Count > 0 Then
For Each file As Telerik.Web.UI.UploadedFile In AsyncUpload.UploadedFiles
Dim strGUID As String
strGUID = Guid.NewGuid.ToString
Dim count As Integer = 0
Dim strOriginalFileName As String = file.GetNameWithoutExtension.Replace(" ", "_") '.Replace("'", "").Replace("&", "and")
Dim strFileGUIDName As String = strGUID & "_" & strOriginalFileName & file.GetExtension
'Dim strFileFullPath As String = Path.Combine(strUploadPath, strFileGUIDName)
Dim strFileFullPath As String = strUploadPath & strFileGUIDName
'Using Hosting.HostingEnvironment.Impersonate
count += 1
file.SaveAs(strFileFullPath, True)
'End Using
Next
End If
'ruReady.Dispose()
End Sub
Can you explain the reason for error “Microsoft JScript runtime error: '_transitionAnimationIsInProgress' is null or not an object”. Below is the scenario.
I have a radpanelbar inside a page along with a link button. Link button act as a ‘content’ toggle button for radpanelbar. To load panelItems and sub items initially,I use pageload() client script. When user click link button, existing items gets removed and a new set get added. Clicking again link button bring back old contents. This work fine. The issue mentioned at the beginning happen when I click link button after selecting any subItem.
To reproduce the same, please try following on sample below. After page comes up (u can see Hardware on top), expand ‘configuration’ and click any sub items for eg. ‘custodians’. Now click ‘S/w Inventory’ and try to expand any panel item. =========================================================================================================
<% @ Page Title="Home Page" Language="C#" MasterPageFile="~/Site.master" AutoEventWireup="true"
CodeBehind="Default.aspx.cs" Inherits="TelerikTotorial._Default" %>
<%@ Register Assembly="Telerik.Web.UI" Namespace="Telerik.Web.UI" TagPrefix="telerik" %>
<asp:Content ID="HeaderContent" runat="server" ContentPlaceHolderID="HeadContent"> </asp:Content>
<asp:Content ID="BodyContent" runat="server" ContentPlaceHolderID="MainContent">
<telerik:RadScriptManager ID="RadScriptManager1" runat="server">
<Scripts> <asp:ScriptReference Assembly="Telerik.Web.UI" Name="Telerik.Web.UI.Common.Core.js"></asp:ScriptReference>
<asp:ScriptReference Assembly="Telerik.Web.UI" Name="Telerik.Web.UI.Common.jQuery.js"> </asp:ScriptReference><asp:ScriptReference Assembly="Telerik.Web.UI" Name="Telerik.Web.UI.Common.jQueryInclude.js"></asp:ScriptReference>
</Scripts>
</telerik:RadScriptManager>
<script type="text/javascript" language="javascript">
function addPanelBar(panel, name, url) {
panelItem = new Telerik.Web.UI.RadPanelItem();
panelItem.set_text(name);
panel.get_items().add(panelItem);
return panelItem; }
function resetPanelBar(panelBar) {
var panelCount = panelBar.get_items().get_count();
for (var count = panelBar.get_items().get_count(); count > 1; count--) {
panelBar.get_items().removeAt(count - 1);
}
}
function loadHardware() {
var panelItem;
var panelSubItem;
document.getElementById('MainContent_lblInvType').innerHTML = "HARDWARE";
document.getElementById('MainContent_lnkSwitch').innerHTML = "<span style='font-size: 10px; font-family: Arial; color:#696969;'>S/W Inventory</span>";
var panelBar = $find("<%= RadPanelBar1.ClientID %>");
panelBar.trackChanges();
resetPanelBar(panelBar);
panelItem = addPanelBar(panelBar, "Dashboard", "");
addPanelBar(panelItem, "Quick Search", "");
panelItem = addPanelBar(panelBar, "Reports", "");
panelItem = addPanelBar(panelBar, "Configuration", "");
addPanelBar(panelItem, "Asset Type", "");
addPanelBar(panelItem, "Custodians", "");
addPanelBar(panelItem, "Stores", "");
panelBar.commitChanges();
}
function loadSoftware() {
var panelItem;
var panelSubItem;
document.getElementById(
'MainContent_lblInvType').innerHTML = "SOFTWARE";
document.getElementById('MainContent_lnkSwitch').innerHTML = "<span style='font-size: 10px; font-family: Arial; color:#696969;'>H/W Inventory</span>";
var panelBar = $find("<%= RadPanelBar1.ClientID %>");
panelBar.trackChanges();
resetPanelBar(panelBar);
panelItem = addPanelBar(panelBar, "Purchase", "");
addPanelBar(panelItem, "Purchase Order", "");
addPanelBar(panelItem, "Invoice", "");
panelItem = addPanelBar(panelBar, "Dashboard", "");
addPanelBar(panelItem, "License Expiry", "");
panelItem = addPanelBar(panelBar, "Reports", "");
panelItem = addPanelBar(panelBar, "Configuration", "");
addPanelBar(panelItem, "Publishers", "");
addPanelBar(panelItem, "Vendors", "");
addPanelBar(panelItem, "Locations", "");
addPanelBar(panelItem, "Vendors", "");
panelBar.commitChanges();
}
function toggleInventory() {
var curLocation = document.getElementById('MainContent_lnkSwitch').innerHTML;
if (curLocation.search("H/W") > 0)
loadHardware();
else
loadSoftware();
}
function pageLoad() {
loadHardware();
};
</script> <h2>Welcome to ASP.NET!
</h2>
<p>
To learn more about ASP.NET visit
<a href="http://www.asp.net" title="ASP.NET Website">
</a>.
</p>
<telerik:RadSplitter ID="radSplitter1" runat="server" Height="100%" Width="100%"BorderSize="0" BorderStyle="Solid" BorderWidth="1px" FullScreenMode="True" PanesBorderSize="0" SplitBarsSize="">
<telerik:RadPane ID="navigationPane" runat="server" Width="180" Locked="true">
<div style="width: 100%; vertical-align: middle; padding: 0px 0px 0px 3px;">
<table border="0" cellspacing="3" width="95%"> <tr><td></td><td> <span style="color: #000000"><asp:Label ID="lblInvType" runat="server"> HARDWARE</asp:Label></span></td></tr> <tr><td colspan="2" align="right">
<asp:LinkButton runat="server" ID="lnkSwitch" OnClientClick="toggleInventory(); return false;"><span style="font-size: 10px; font-family: Arial; color:#696969;">S/W Inventory</span></asp:LinkButton>
</td></tr></table>
</div>
<br /><telerik:RadPanelBar ID="RadPanelBar1" runat="server" ExpandMode="SingleExpandedItem"Width="99%" BackColor="#D9D9D9"> <Items> <telerik:RadPanelItem Expanded="True" Text="Inventory" BackColor="#D9D9D9" ID="panelInventory"> <Items> <telerik:RadPanelItem Text="test"> <ItemTemplate> </ItemTemplate> </telerik:RadPanelItem> </Items> </telerik:RadPanelItem> </Items> </telerik:RadPanelBar> </telerik:RadPane>
<telerik:RadSplitBar ID="RadSplitbar1" runat="server" CollapseMode="None" Height="100%" />
<telerik:RadPane ID="contentPane" runat="server" Height="100%" ContentUrl="about:blank">
</telerik:RadPane> </telerik:RadSplitter>
</asp:Content>
========================================================================