Visual Studio Предупреждение «Содержимое запрещено» в проекте ASP.NET - PullRequest
0 голосов
/ 25 марта 2010

Я только начал работать программистом в прошлом месяце, поэтому от меня будет много вопросов новичков, следите за обновлениями ... Сейчас я работаю над изменением предоставленного шаблона (из DevExpress) для создания новой веб-формы с использованием ASP.NET 2.0 в Visual Studio 2008.

Пока есть функциональность этой веб-формы, я нахожусь в процессе избавления от девяноста предупреждений, большинство из которых приходят из предоставленного шаблона.

Один из них на некоторое время озадачил меня: «Предупреждение 75 Содержимое не допускается между открывающим и закрывающим тегами для элемента« ClientSideEvents ».»

А вот и код:

<dxe:ASPxListBox id="edtMultiResource" runat="server" width="100%" 
SelectionMode="CheckColumn" DataSource='<%# ResourceDataSource %>' Border-BorderWidth="0">
    <ClientSideEvents SelectedIndexChanged="function(s, e) {
    var resourceNames = new Array();
        var items = s.GetSelectedItems();
        var count = items.length;
        if (count > 0) {
            for(var i=0; i<count; i++) 
                _aspxArrayPush(resourceNames, items[i].text);
        }
        else
            _aspxArrayPush(resourceNames, ddResource.cp_Caption_ResourceNone);
        ddResource.SetValue(resourceNames.join(', '));
    }"></ClientSideEvents>
</dxe:ASPxListBox>

Я сам не видел ничего плохого в коде, поэтому, пожалуйста, помогите мне.

Ответы [ 2 ]

2 голосов
/ 25 марта 2010

Четан Шастри был на правильном пути в своем ответе, который он удалил. Сценарий, который вы указали в атрибуте HTML, не закодирован в формате HTML.

Вы должны закодировать любые символы, которые имеют особое значение в HTML, например <, >, & и " в качестве значения атрибута:

<dxe:ASPxListBox id="edtMultiResource" runat="server" width="100%" 
SelectionMode="CheckColumn" DataSource='<%# ResourceDataSource %>' Border-BorderWidth="0">
                                <ClientSideEvents SelectedIndexChanged="function(s, e) {
                                var resourceNames = new Array();
                                    var items = s.GetSelectedItems();
                                    var count = items.length;
                                    if (count &gt; 0) {
                                        for(var i=0; i&lt;count; i++) 
                                            _aspxArrayPush(resourceNames, items[i].text);
                                    }
                                    else
                                        _aspxArrayPush(resourceNames, ddResource.cp_Caption_ResourceNone);
                                    ddResource.SetValue(resourceNames.join(', '));
                                }"></ClientSideEvents>
                            </dxe:ASPxListBox>
0 голосов
/ 25 марта 2010

Попробуйте изменить конфигурацию тега с

<ClientSideEvents property="value"></ClientSideEvents>

до

<ClientSideEvents property="value" />
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...