2017-04-16 1 views
0

뷰에서 partialview를 여러 번 사용하기 때문에 DevExpress MVC DropDownEdit 요소에 동적 이름을 사용해야합니다. 의 setText 및 HideDropDown 내가 항상 오류가 SetText HideDropDownJavaScript 동적 변수 메서드 호출

DevExpress의 특정 기능입니다

<script type="text/javascript"> 
 
    var textSeparator = ";"; 
 
    function UpdateText(listBox, args) { 
 
     var listBoxName = listBox.name; 
 
     var locDropDown = document.getElementById("printOutDropDown" + listBoxName); 
 
     if (locDropDown != null && locDropDown !== undefined) { 
 
      alert('I am in'); 
 
      locDropDown['SetText'](listBox.GetSelectedItem().text); 
 
      locDropDown['HideDropDown'](); 
 
     } 
 
     
 
    }

: : 개체가 속성을 지원하지 않습니다 나는 다음과 같은 자바 스크립트를 사용하려고 또는 'SetText'메서드 사용 시도 :

locDropDown.SetText(... 
locDropDown().SetText(... 
locDropDown()['SetText']... 

아무것도 작동하지 않습니다. 누군가가 내게이 문제를 해결하는 방법을 알려주시겠습니까?

추가 정보 : locDropDown가 definitly null 또는 정의되지 않도록 1) 내가 컨트롤을 특정 이름을 지정하고 한 번만 사용할 때, 모든 지느러미 2 일) 경고가 제기된다. locDropDown 가정

THX

+0

(등 SetText()로) 해당 컨트롤에 대해 DevExpress의 자바 스크립트 기능을 사용할 수 있어야

var locDropDown = ASPxClientControl.GetControlCollection().GetByName("printOutDropDown" + listBoxName) 

:

컨트롤을 얻을 수있는 방법은 클라이언트 컨트롤 컬렉션 기능을 사용하는 것입니다 또 왔어. 솔루션을 찾았지만 eval()이 작동하는 이유를 이해하지 못했습니다 ... function UpdateText (listBox, args) { var listBoxName = listBox.name; var locDropDownName = "printOutDropDown"+ listBoxName; var locDropDown = document.getElementById ("printOutDropDown"+ listBoxName); if (locDropDown! = null && locDropDown! == undefined) { eval (locDropDownName) .SetText (listBox.GetSelectedItem(). text); eval (locDropDownName) .HideDropDown(); } } –

답변

0

는 DevExpress의 제어이다. 그런 다음