1

我的asp.net 页面上有一个列表框,我使用了rquiredfieldvalidation。问题是当列表框在特定的下拉选择中填充时,在这种情况下不会自动选择任何成员。在保存单击时,它被视为空并且仍然显示验证。

只有当我明确选择一个成员时,验证才会进行并且我能够保存。

我尝试使用javascript函数在我的保存按钮的OnCLientClick上自动选择第一个成员。但是问题是当我将成员从另一个列表框移动到这个列表框时,已经选择了一个成员。之后我的函数调用选择了另一个成员。因此选择了两个,在这种情况下,它会出错。

这是使用的javascript函数:

function FunSelect()
{
            var objRequiredFunctionalities = document
                .getElementById("<%=lbCurrentFunc.ClientID%>");

            if (objRequiredFunctionalities.selectedIndex > 0 ||      
                     objRequiredFunctionalities.options.length > 0) {
                objRequiredFunctionalities.options[0].selected = true;
            }
        }

这是将项目从一个列表框移动到我已验证的列表框的代码

    function ShiftToRight() {
        var objSource = document.getElementById("<%=lbAllFunc.ClientID%>");
        var objRequiredFunctionalities = document.getElementById("<%=lbCurrentFunc.ClientID%>");

        if (objSource.selectedIndex < 0 || objSource.options.length < 0) {
            alert("Select Item in Left List to move.");
            return;
        }
        var flag = 0;
        for (var i = 0; i < objSource.options.length; i++) {
            if (objSource.options[i].selected) {
                var item = objSource.options[i];
                i--;
                for (var i = 0; i < objRequiredFunctionalities.options.length; i++) {
                    if (item.value == objRequiredFunctionalities.options[i].value)
                        flag = 1;
                }
                if (flag == 0) {
                    if (navigator.appName == 'Netscape') {
                        objRequiredFunctionalities.options.add(item);
                    }
                    else {
                        objRequiredFunctionalities.options.appendChild(item);
                    }
                }
                else alert("Selected item already exists in the Current Functionalities");

            }
        }
4

1 回答 1

0
美食类型:
      <asp:RequiredFieldValidator ID="CuisineTypeReqFieldValid" InitialValue="-1" Display="dynamic" runat="server" ControlToValidate="CuisineType">
      <div class="SearchFormRow">
        <span class="SearchFormRowLabel">&nbsp;</span>
        <span class="SearchFormRowField">You must select at least 1 item from the list!</span>
      </div>
      </asp:RequiredFieldValidator>
于 2012-07-06T08:30:54.937 回答