문제

radcontrol, radgrid를 추가했으며 편집 모드에 Radcombobox를 추가해야합니다.

사용자가 Radcombobox를 클릭하면 사용자가 값을 업데이트 할 때 테이블에 저장하려면 Radcombobox의 "텍스트"및 "값"을 모두 가져와야합니다.

<telerik:RadComboBox ID="RadComboBox1" Runat="server" 
             DataSourceID="SqlDataSource1" DataTextField="docCategoryName" 
             DataValueField="docCategoryID" Height="200px" Skin="Vista">

사용자가 Radcombobox에서 선택하면 Datatextfield & Datavaluefield의 값을 Hiddenfield로 가져와야합니다.

도움이 되었습니까?

해결책

program.x가 설명한 접근법은 매우 좋습니다. 물론 이것은 Radgrid의 gridtemplatecolumn 내부에 Radcombobox를 사용하는 경우 작동합니다.

Radgrid는 또한 내장을 제공합니다 GridDropDownColumn 편집 중에 Radcombobox를 자동으로 렌더링 할 수 있습니다. 내장 열 유형을 사용하기로 선택한 경우 렌더링 된 Radgrid의 클라이언트 측 이벤트 핸들러를 프로그래밍 방식으로 설정해야합니다.

protected void RadGrid1_ItemCreated(object sender, Telerik.Web.UI.GridItemEventArgs e)
{
    //Find GridEditableItems when in Edit mode
    if (e.Item is GridEditableItem && e.Item.IsInEditMode)
    {
        //Get reference to item (i.e. Row)
        var item = e.Item as GridEditableItem;

        //Get reference to auto-generated RadCombobox in
        //specific column (in this case, a column called Title)
        var rcb = item["Title"].Controls[0] as RadComboBox;
        if (rcb == null)
            return;

        //Customize the RadCombobox properities
        rcb.OnClientSelectedIndexChanged = "onselectedindexchanged";
    }
}

"OnSelectedIndexChanged"는 Radcombobox 이벤트를 처리하도록 설계된 페이지의 클라이언트 측 JavaScript 기능의 이름입니다.

이러한 접근 방식 중 하나를 사용하면 목표를 달성 할 수 있어야합니다.

다른 팁

Telerik은 이것을 도와주는 최고의 사람들이지만 그들의 사이트 (및 기억에서) :

http://www.telerik.com/help/aspnet-ajax/combo_clientsideonclientselectedIndexChanged.html

Radcombo가있는 경우 :

<telerik:RadComboBox
 ID="RadComboBox1"
 runat="server"
 OnClientSelectedIndexChanged="OnClientSelectedIndexChanged">
</telerik:RadComboBox> 

JS 이벤트와 함께 :

<script language="javascript" type="text/javascript">
function OnClientSelectedIndexChanged(sender, eventArgs)
{
 var item = eventArgs.get_item();

// get the text and value elements
var text=item.get_text();
var val=item.get_value();

$('#hiddenField').val(val);
}
</script>

여기서 Hiddenfield는 숨겨진 필드의 신분증입니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top