Mar 22, 2018, 7:53 AM
[CLOSED] TagField: Add customer value
Hi everyone,
I'm getting following Error, when entering an e-mail address to my tag field which is not an item of that tagfield
It occures if I do the following:
* Select one entry from the items I added to the tagfield on clientside
* Enter an e-mail address that has not been added on the client side
* press the enter key to confirm
OR
* just enter a not added e-mail address
I recognized that something here is going wrong :
I made some screenshots:
Before selection

After selection one from store

After enter an item

Testsample:
js to add tags
Thanks in advance!
I'm getting following Error, when entering an e-mail address to my tag field which is not an item of that tagfield
ext.axd?v=20018:19 Uncaught TypeError: Cannot read property 'internalId' of undefined
at E.updateIndexes (ext.axd?v=20018:19)
at E.onAdd (ext.axd?v=20018:19)
at E.fire (ext.axd?v=20018:19)
at E.doFireEvent (ext.axd?v=20018:19)
at E.a.doFireEvent (ext.axd?v=20018:19)
at E.fireEventArgs (ext.axd?v=20018:19)
at E.fireEvent (ext.axd?v=20018:19)
at E.onCollectionAddItems (ext.axd?v=20018:19)
at E.onCollectionAdd (ext.axd?v=20018:19)
at E.notify (ext.axd?v=20018:19)
at E.updateIndexes (ext.axd?v=20018:19)
at E.onAdd (ext.axd?v=20018:19)
at E.fire (ext.axd?v=20018:19)
at E.doFireEvent (ext.axd?v=20018:19)
at E.a.doFireEvent (ext.axd?v=20018:19)
at E.fireEventArgs (ext.axd?v=20018:19)
at E.fireEvent (ext.axd?v=20018:19)
at E.onCollectionAddItems (ext.axd?v=20018:19)
at E.onCollectionAdd (ext.axd?v=20018:19)
at E.notify (ext.axd?v=20018:19)
* Select one entry from the items I added to the tagfield on clientside
* Enter an e-mail address that has not been added on the client side
* press the enter key to confirm
OR
* just enter a not added e-mail address
I recognized that something here is going wrong :
<input type="hidden" name="_TFRecipient_state" id="ext-element-8" value="">
If I enter an entry which is not an item, the items I selected before or entered before are removed.I made some screenshots:
Before selection
After selection one from store
After enter an item
Testsample:
<%@ Page Language="VB" AutoEventWireup="false" CodeFile="Forum.aspx.vb" Inherits="EMail_Forum" Title="E-Mail" %>
<%@ Register Assembly="System.Web.Extensions, Version=1.0.61025.0, Culture=neutral"
Namespace="System.Web.UI" TagPrefix="asp" %>
<%@ Import Namespace="System.Web.Optimization" %>
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
<head>
<asp:PlaceHolder ID="PlaceHolder1" runat="server">
<%= Scripts.Render("~/bundles/jquery")%>
</asp:PlaceHolder>
<title>E-Mail</title>
<link rel="stylesheet" type="text/css" href="../MasterPage.css" />
<script type="text/javascript" src="../script/EMail.js"></script>
<style type="text/css">
#FormPanelEMail table.x-table-layout {
width: 60%;
}
.smallButton .x-btn-inner-default-small {
font-size: 9px;
}
</style>
</head>
<body>
<form>
<ext:ResourceManager ID="ResourceManager1" runat="server" />
<ext:Viewport ID="Viewport1" runat="server" Layout="BorderLayout" AutoScroll="true">
<Items>
<ext:Panel ID="PanelHeader" runat="server" Region="North" Split="false" Height="64"
Collapsible="false" Padding="0" Margins="0" Border="false">
<Items>
</Items>
</ext:Panel>
<ext:Panel runat="server" Layout="AnchorLayout" Region="Center" AutoScroll="True" ID="FormPanelEMail">
<Items>
<ext:Label runat="server" ID="NotificationLabel" Padding="5" Hidden="true" Text="Die E-Mail konnte nicht geladen werden."></ext:Label>
<ext:Hidden runat="server" ID="HiddenRecipient"></ext:Hidden>
<ext:Hidden runat="server" ID="HiddenCc"></ext:Hidden>
<ext:Hidden runat="server" ID="HiddenBcc"></ext:Hidden>
<ext:DisplayField runat="server" ID="DFFrom" FieldLabel="Von" ColSpan="12" Padding="5" IndicatorIcon="Help">
</ext:DisplayField>
<ext:DisplayField runat="server" ID="DFReplyTo" FieldLabel="Antwort an" ColSpan="12" Padding="5"></ext:DisplayField>
<ext:Container runat="server" Layout="TableLayout">
<LayoutConfig>
<ext:TableLayoutConfig Columns="2"></ext:TableLayoutConfig>
</LayoutConfig>
<Items>
<ext:TagField runat="server" ID="TFRecipient" TypeAhead="true" FieldLabel="An" Width="650" AllowBlank="false" Padding="5" IndicatorIcon="Help" IndicatorTip="Mehrere E-Mail-Empfänger durch Komma oder Leerzeichen getrennt eingeben">
<Tags></Tags>
<Items></Items>
</ext:TagField>
<ext:Button runat="server" Text="Cc/Bcc" ToolTip="Öffnet bzw. schließt die Textfelder zur Eingabe von Cc und Bcc" HeightSpec="">
<Listeners>
<Click Handler="showOrHideTextField()"></Click>
</Listeners>
</ext:Button>
</Items>
</ext:Container>
<ext:Container runat="server" Layout="TableLayout" ID="ContainerCc" Hidden="true">
<LayoutConfig>
<ext:TableLayoutConfig Columns="3"></ext:TableLayoutConfig>
</LayoutConfig>
<Items>
<ext:TagField runat="server" ID="TFCc" FieldLabel="Cc" Padding="5" Width="650" IndicatorIcon="Help" IndicatorTip="Mehrere E-Mail-Empfänger durch Komma oder Leerzeichen getrennt eingeben">
</ext:TagField>
</Items>
</ext:Container>
<ext:Container runat="server" Layout="TableLayout" ID="ContainerBcc" Hidden="true">
<LayoutConfig>
<ext:TableLayoutConfig Columns="3"></ext:TableLayoutConfig>
</LayoutConfig>
<Items>
<ext:TagField runat="server" ID="TFBcc" FieldLabel="Bcc" Padding="5" Width="650" IndicatorIcon="Help" IndicatorTip="Mehrere E-Mail-Empfänger durch Komma oder Leerzeichen getrennt eingeben">
</ext:TagField>
</Items>
</ext:Container>
<ext:TextField runat="server" ID="TFSubject" FieldLabel="Betreff" EmptyText="Betreff" ColSpan="12" Padding="5" Width="650"></ext:TextField>
<ext:TextArea runat="server" ID="TAEMailBody" Height="150" ColSpan="12" Padding="5" Width="650"></ext:TextArea>
<ext:Container runat="server" MarginSpec="0 0 10 0">
<Items>
<ext:Button runat="server" Text="Verwerfen" Icon="Cancel" ColSpan="6" MarginSpec="0 0 0 5" ID="ButtonCancelEMail">
<Listeners>
<Click Fn="dropEmail"></Click>
</Listeners>
</ext:Button>
<ext:Button runat="server" Text="Senden" Icon="Accept" ColSpan="6" ID="ButtonSendEMail" Disabled="true" MarginSpec="0 0 0 505">
<Listeners>
<Click Fn="sendEMailCheckInputFields"></Click>
</Listeners>
</ext:Button>
</Items>
</ext:Container>
</Items>
</ext:Panel>
</Items>
</ext:Viewport>
</form>
</body>
<script type="text/javascript">
var extReady = false;
var jqueryReady = false;
var isEverythingReady = function () { return extReady && jqueryReady }
Ext.onReady(function () {
extReady = true;
if (isEverythingReady())
eMailContactManager.loadContactsForTagField("EMail");
});
$(document).ready(function () {
jqueryReady = true;
if (isEverythingReady())
eMailContactManager.loadContactsForTagField("EMail");
});
</script>
</html>
js to add tags
var eMailContactManager;
eMailContactManager = {
loadContactsForTagField: function (source) {
$.get(
"../api/eMailContact",
function (data) {
if (source === "EMail") {
data.forEach(function (contact) {
App.TFRecipient.addItem(contact.Name + ' (' + contact.EMailAddress + ')', contact.Id);
App.TFBcc.addItem(contact.Name + ' (' + contact.EMailAddress + ')', contact.Id);
App.TFCc.addItem(contact.Name + ' (' + contact.EMailAddress + ')', contact.Id);
});
;
});
}};
Thanks in advance!
Last edited by fabricio.murta; Apr 03, 2018 at 3:59 PM.