javascript - Ajax Get方法不使用Ember Js返回值

原文 标签 javascript jquery ajax ember.js handlebars.js

我试图显示使用ember js的下拉列表。使用Ajax GET方法。但是它无法返回任何值。

我对Ajax的要求

这是我的代码:

App.IndexController = Ember.ArrayController.extend({
  model1: function () {
    var Category1 ;
    $.ajax({
      url: 'http://localhost:63951/Home/GetAllCountry',
      type: 'GET',
      datatype: 'application/json',
      async: false,
      success: function (data) {
        alert(data);
        Category1 = data;
      }
    });
    return Category1;
  }.property(),

});


注意
内部控制器警报显示正常。

提醒杰森

[{“ CountryID”:1,“ CountryName”:“美国”}]

在我的html页面中无法获得该值。

js代码在这里

 <script type="text/x-handlebars">
        <h2>Welcome to Ember.js</h2>
        {{outlet}}
    </script>
    <script type="text/x-handlebars" id="index">

        <div>

            {{view  "select"  id="AddProfile_SelectCountry"  content=model1  prompt="Select Country"  optionValuePath="content.CountryName" optionLabelPath="content.CountryName" valueBinding=default }}

            </div>


    </script>

    <script src="js/libs/jquery-1.10.2.js"></script>
    <script src="js/libs/handlebars-v1.3.0.js"></script>
    <script src="js/libs/ember-1.8.1.js"></script>
    <script src="js/appnew.js"></script>
    <!-- to activate the test runner, add the "?test" query string parameter -->

最佳答案

当您执行Category1 = data;时,会将变量标签Category1设置为数据值。您要做的是更改该标签引用的对象。

最好将Category1设为Ember对象,并通过数据设置其属性。像这样:

        model1: function () {
        var Category1 = Ember.Object.create();
        $.ajax({
                    url: 'http://localhost:63951/Home/GetAllCountry',
                    type: 'GET',            
                    datatype: 'application/json',
                    async: false,
                    success: function (data) {
alert(data)
                        Category1.setProperties(data); 
                   }
        });       
        return Category1;
            }.property(),


如果您的数据是以数组形式输入的,但是您只想要第一个元素(如上所示),则可以改为Category1.setProperties(data[0]);

相关文章:

javascript - 将事件绑定到多个附加数据

javascript - 从Ajax中的另一个页面选择数据

javascript - jQuery不透明度切换

javascript - 编译需要CommonJS功能到本机Java的JavaScript

javascript - JqueryUI Datepicker:未捕获的TypeError:无法读取未定义的属性“设置”?

javascript - 如何在单个页面上创建滚动到顶部按钮?

javascript - 在基于事件的第三方库中使用react-redux的最佳方法是什么

javascript - 如何使用SPServices使用dropzone.js将文件上传到SharePoint文件库?

jquery - 同一页上有两个无法进行一个Ajax调用

javascript - 当加载的内容具有特殊字符时,使用html()加载动态数据会破坏脚本