如何使用javascript获取radgrid内的telerik rad下拉列表的值?

时间:2016-10-01 10:17:06

标签: asp.net telerik telerik-grid

我的radgrid包含reddropdown,其中autopostback = false。 当用户从网格内的下拉列表中选择值时,该值是如何通过javascript获得的。

<telerik:GridTemplateColumn  UniqueName="Reminder"   HeaderStyle-Width="350px" DataField="Reminder">
                    <ItemTemplate >
                        <telerik:RadDropDownList runat="server" ID="ReminderDropDown" Width="350px" OnSelectedIndexChanged="OnSelectedIndexChanged" />
                    </ItemTemplate>
                </telerik:GridTemplateColumn>



 <ClientSettings>
            <ClientEvents OnCommand="OnSelectedIndexChanged" />
        </ClientSettings>


<script type="text/javascript">
    function OnClientSelectedIndexChanged(sender, eventArgs) {
        var hiddenvalue = document.getElementById("Remindervalue");
        var s = hiddenvalue.value;
        alert("You selected item with index : " + document.getElementById(s).value);
    }
</script>

请建议

1 个答案:

答案 0 :(得分:0)

您需要对代码进行一些更改才能使其正常工作。

首先,您应该注册客户端OnClientItemSelected事件,而不是仅在回发时发生的服务器端OnSelectedIndexChanged事件。

<telerik:RadDropDownList runat="server" ID="ReminderDropDown" Width="350px" OnClientItemSelected="OnClientItemSelected" />

其次,在您的JS函数中,要从RadDropDownList控件获取所选项的客户端对象引用,您应该调用将返回所选项的eventArgs.get_item()

<script type="text/javascript">
    function OnClientItemSelected(sender, eventArgs) {
        var item = eventArgs.get_item();
        alert("You selected " + item.get_text() + " with value " + item.get_value());
    }
</script>

有关详细信息,请参阅this help article。希望它有所帮助。