【问题标题】:JavaScript dynamic variable Method callJavaScript 动态变量 方法调用
【发布时间】:2017-04-16 11:00:01
【问题描述】:

我必须对 DevExpress MVC DropDownEdit 元素使用动态命名,因为我在一个视图上多次使用局部视图。 我尝试使用以下 JavaScript:

<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 和 HideDropDown 是 DevExpress 特定的函数 SetText HideDropDown

我总是收到错误:对象不支持属性或方法“SetText” 我试过你用:

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

没有任何工作。有人可以给我建议,如何解决这个问题?

附加信息: 1)当我给控件一个特定的名称并只使用一次时,一切正常 2) 引发警报,因此 locDropDown 绝对不是 null 或 undefined。

谢谢

【问题讨论】:

  • 你好。我找到了一个解决方案,但不明白为什么 eval() 工作...

标签: javascript jquery devexpress-mvc


【解决方案1】:

假设 locDropDown 是一个 DevExpress 控件。

获取控件的方式是使用客户端控件集合函数:

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

那么您应该能够针对该控件使用 DevExpress JavaScript 函数(例如 SetText() 等)

【讨论】:

    猜你喜欢
    • 2012-10-10
    • 2023-03-12
    • 2018-06-25
    • 2018-05-20
    • 1970-01-01
    • 2017-04-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多