Ich habe ein Problem mit der Verwendung eines Skripts, das eine NiceEdit-Symbolleiste zu einem Textbereich hinzufügt, wenn dieser Textbereich innerhalb einer Ajax-Registerkarte ist.Wie verweist man auf ein Steuerelement, das in einem Ajax Tab existiert?
Ich möchte wissen, ob ich es auf eine andere Weise als nur die ID beziehen sollte.
Ich meine die ID dieses Textbereichs, ich habe versucht, den Textbereich außerhalb des Tab-Container zu nehmen, es funktioniert, aber wenn ich es zurückgebe, es einfach nicht.
<%@ Page Language="VB" ValidateRequest ="false" AutoEventWireup="false" CodeFile="tabbedNiceEditt.aspx.vb" Inherits="Client_tabbedNiceEditt" %>
<script src="../nicEdit/nicEdit.js" type="text/javascript"></script>
<script type="text/javascript">
bkLib.onDomLoaded(function() {
new nicEditor({buttonList : ['fontSize','fontFamily','fontFormat','bold','italic','underline','strikethrough','forecolor','bgcolor','removeformat'], iconsPath : '../nicEdit/nicEditorIcons.gif'}).panelInstance('txt');
});
</script>
<%@ Register Assembly="AjaxControlToolkit" Namespace="AjaxControlToolkit" TagPrefix="cc1" %>
<!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>Untitled Page</title>
<script type="text/javascript">
function pageLoad() {
}
</script>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:ScriptManager ID="ScriptManager1" runat="server" />
<cc1:TabContainer ID="TabContainer1" runat="server">
<cc1:TabPanel ID= "first" runat ="server" >
<ContentTemplate>
<b>Stuff Goes HERE</b>
<br />
<asp:TextBox ID = "txt" name = "txt" runat ="server" TextMode ="MultiLine" Height = "256" Width = "256">
</asp:TextBox>
<br />
<br />
<asp:Button id = "btn" runat ="server" Text = "click" />
</ContentTemplate>
</cc1:TabPanel>
<cc1:TabPanel ID = "second" runat ="server" >
<ContentTemplate>
<b>More Stuff for second tab</b>
</ContentTemplate>
</cc1:TabPanel>
</cc1:TabContainer>
</div>
</form>
</body>
</html>
Ich betrachtete die Seite im Browser, überprüfte die ID in der Seitenquelle, es war "TabContainer1 $ first $ txt", verwendete es anstelle von "txt" und das Skript war wie: panelInstance ('<% = txt. TabContainer1 $ erste $ txt%> Ich habe einen Fehler: BC30456: 'TabContainer1' ist kein Mitglied von 'System.Web.UI.WebControls.TextBox'. – Maen
@Maen, siehe meine Bearbeitung – ybo
Sorry, so viel von zu nehmen Deine Zeit, aber entschuldige meine Neuigkeit: P Was soll ich jetzt und in einfachen Worten tun? sollte der Code genau sein: .... panelInstance ('<% = txt.ClientID%>') Wenn ja, habe ich es getan , keine Fehler, aber das Skript funktioniert nicht, der Textbereich "txt" bekommt keine Formatierungsfelder .. !!? – Maen