Kendo ui 能否实例化页面加载后动态创建的剑道ui对象?

Kendo ui 能否实例化页面加载后动态创建的剑道ui对象?,kendo-ui,kendo-mobile,Kendo Ui,Kendo Mobile,我已经成功地在移动应用程序中使用了剑道UI小部件。但是,我当前的应用程序要求动态加载和使用各种UI元素。我尝试过动态实例化剑道UI小部件,如下所示: <ul id="my_ul" > <script>$('#my_ul').kendoListView().style("inset");</script> <li> <label>Label 1: <input id="dynamicLI1" type="te

我已经成功地在移动应用程序中使用了剑道UI小部件。但是,我当前的应用程序要求动态加载和使用各种UI元素。我尝试过动态实例化剑道UI小部件,如下所示:

<ul id="my_ul" >
<script>$('#my_ul').kendoListView().style("inset");</script>
  <li>
    <label>Label 1:
      <input id="dynamicLI1" type="text" name="dynamicLI1" value="" />
    </label>
  </li>
  <li>
    <label>Label 2:
      <input id="dynamicLI2" type="text" name="dynamicLI2" value="" />
    </label>
  </li>
</ul>

在脚本运行时,尚未创建
  • 元素。 尝试将脚本标记移动到

    <ul id="my_ul" >
      <li>
        <label>Label 1:
          <input id="dynamicLI1" type="text" name="dynamicLI1" value="" />
        </label>
      </li>
      <li>
        <label>Label 2:
          <input id="dynamicLI2" type="text" name="dynamicLI2" value="" />
        </label>
      </li>
    </ul>
    <script>$('#my_ul').kendoListView().style("inset");</script>
    

    它应该初始化HTML中声明的任何/所有小部件和MVVM绑定。

    您的第一个建议似乎有效。不幸的是,当我将ul初始化为KendoUI对象时,它将不再显示。我不知道这是为什么。我正在Cordova应用程序中使用它。你能分享更具体的代码吗?如何将HTML添加到DOM?我更新了问题。代码中还有其他有用的部分吗?另外,我在Cordova应用程序中使用了这个。你的更新似乎也不起作用。它显示响应而不初始化为剑道对象。我正在Cordova应用程序中使用剑道。
    <ul id="my_ul" >
      <li>
        <label>Label 1:
          <input id="dynamicLI1" type="text" name="dynamicLI1" value="" />
        </label>
      </li>
      <li>
        <label>Label 2:
          <input id="dynamicLI2" type="text" name="dynamicLI2" value="" />
        </label>
      </li>
    </ul>
    <script>$('#my_ul').kendoListView().style("inset");</script>
    
    // create new elements
    var $list = $('<ul>...rest of html string...</ul>');
    var $view = $('#myView');
    
    // add elements to DOM
    $view.append($list);
    
    // init kendo list view
    $list.kendoListView({
        style: inset
    });
    
    <ul id="my_ul" data-role="listview" data-style="inset" >
      <li>
        <label>Label 1:
          <input id="dynamicLI1" type="text" name="dynamicLI1" value="" />
        </label>
      </li>
      <li>
        <label>Label 2:
          <input id="dynamicLI2" type="text" name="dynamicLI2" value="" />
        </label>
      </li>
    </ul>
    
        if(res) {
            $("#dynamic").html(res);
            kendo.bind($("#dynamic"), {}, kendo.mobile.ui);
        } else {