小编Pet*_*eGO的帖子

调用jquery ajax - .fail vs.:error

我应该使用哪一个?

有没有理由使用一个而不是另一个?

错误处理更好吗?

$.ajax({
    url: url,
    data: { start: start, end: end }
}).done(function(data, textStatus, jqXHR) {
    $('#myElement').append(data);
}).fail(function() {
    // report error    
});
Run Code Online (Sandbox Code Playgroud)

要么

$.ajax({
    url: url,
    data: { start: start, end: end },
    success: function(data, textStatus, jqXHR) {
        $('#myElement').append(data);
    },
    error: function(jqXHR, textStatus, errorThrown) {
        // report error
    }
});
Run Code Online (Sandbox Code Playgroud)

ajax jquery callback

71
推荐指数
3
解决办法
4万
查看次数

在Javascript中循环数组

我正在使用Google Chrome的控制台窗口来尝试找出为什么我无法在javascript中循环遍历数组.

我有一个调用的javascript对象moveResult,如下所示:

在此输入图像描述

我正试图MoveParts在这样的javascript中循环:

for (var movePart in moveResult.MoveParts) {
    console.log(movePart.From);
};
Run Code Online (Sandbox Code Playgroud)

我总是得到undefined而不是实际价值.但是,如果我尝试显式访问第一项,我会得到我想要的,如下所示:

console.log(moveResult.MoveParts[0].From);
Run Code Online (Sandbox Code Playgroud)

结果是"b1".

为什么我的循环不起作用?

我也试过一个foreach:

moveResult.MoveParts.foreach(function (movePart) {
    console.log(movePart.From);
};
Run Code Online (Sandbox Code Playgroud)

javascript arrays foreach loops for-loop

26
推荐指数
1
解决办法
487
查看次数

AngularJS $ routeChangeSuccess回调参数

我是AngularJS的新手,对有关事件监听器的文档感到困惑.

该文档列出了该$routeChangeSuccess事件的以下内容:

$ routeChangeSuccess解析路由依赖关系后广播.ngView侦听指令以实例化控制器并呈现视图.

类型:

广播目标:

根范围

但是,它没有引用传递给回调函数的任何参数.然而,我在SO上看到的大多数示例都有类似的回调函数列表:

$rootScope.$on("$routeChangeSuccess", function(event, next, current) {
   ...
});
Run Code Online (Sandbox Code Playgroud)

根据AngularJS文档,所有回调都有第一个参数event.我明白了.但是,在是nextcurrent来自哪里?在任何文档中列出的是哪里?

angularjs angularjs-routing

12
推荐指数
1
解决办法
3万
查看次数

提取两个字符串之间的所有字符串

我正在尝试开发一个匹配两个字符串之间所有字符串的方法:

我试过这个,但它只返回第一场比赛:

string ExtractString(string s, string start,string end)
        {
            // You should check for errors in real-world code, omitted for brevity

            int startIndex = s.IndexOf(start) + start.Length;
            int endIndex = s.IndexOf(end, startIndex);
            return s.Substring(startIndex, endIndex - startIndex);
        }
Run Code Online (Sandbox Code Playgroud)

我们假设我们有这个字符串

String Text = "A1FIRSTSTRINGA2A1SECONDSTRINGA2akslakhflkshdflhksdfA1THIRDSTRINGA2"
Run Code Online (Sandbox Code Playgroud)

我想ac#function执行以下操作:

public List<string> ExtractFromString(String Text,String Start, String End)
{
    List<string> Matched = new List<string>();
    .
    .
    .
    return Matched; 
}
// Example of use 

ExtractFromString("A1FIRSTSTRINGA2A1SECONDSTRINGA2akslakhflkshdflhksdfA1THIRDSTRINGA2","A1","A2")

    // Will return :
    // FIRSTSTRING
    // SECONDSTRING
    // THIRDSTRING
Run Code Online (Sandbox Code Playgroud)

谢谢您的帮助 !

c#

11
推荐指数
2
解决办法
3万
查看次数

ASP .NET MVC 3 - 如何提交嵌套在html表单中的ajax表单

我有一个ASP .NET MVC 3项目和我的一个"创建"视图的问题.

我有使用ajax表单实现的级联下拉字段.

粗略地说这个观点 - 像这样:

@using (Html.BeginForm(...))
{
    @Html.MyDropDown1

    using (Ajax.BeginForm(...))
    {
        @Ajax.MyDropdown2
        <input type="submit" value="Select" />
    }

    using (Ajax.BeginForm(...))
    {
        @Ajax.MyDropdown3
        <input type="submit" value="Select" />
    }

    <!-- other form fields -->

    <input type="submit" value="Create" />
}
Run Code Online (Sandbox Code Playgroud)

问题是ajax表单中的提交按钮实际上提交了外部html表单.

有没有办法指定我要提交的表单的名称?

我想把我的ajax表单放在我的html表单上面所以不会有任何嵌套 - 但我需要在我的html帖子中下拉列表的选定项的值.

谢谢,皮特

ajax form-submit nested-forms asp.net-mvc-3

8
推荐指数
1
解决办法
5336
查看次数

await/async Microsoft Practices企业库数据

我有一个较旧的应用程序,我在那里用来Microsoft.Practices.EnterpriseLibrary.Data从数据库中获取数据.我最近升级到.NET 4.5并希望利用await/async.

根据命名标准,我没有看到任何以"Async"结尾的方法,即使在最新版本的软件包中也是如此.是否可以在不手动使其异步的情况下对此ADO .NET库使用await/async?

c# ado.net enterprise-library async-await asp.net-4.5

8
推荐指数
2
解决办法
3216
查看次数

在HTML5中拖放的Javascript

试图在HTML5中做一个简单的拖放示例 - 但是当我将图像放入div元素时,我得到以下错误.

未捕获的TypeError:无法设置null的属性'innerHTML'

所以我假设错误消息意味着dragElement为null.我不明白为什么,因为我在dragstart事件中将它设置为img元素的HTML.

有谁知道如何使这项工作?

var dragElement = null;

$('#x').bind('dragstart', function (e) {
    dragElement = this;
    e.dataTransfer.effectAllowed = 'move';
    e.dataTransfer.setData('text/html', this.innerHTML);
});

$('#drop-box').bind('dragover', function (e) {
    e.preventDefault();
    return false;
});

$('#drop-box').bind('drop', function (e) {
    e.preventDefault();
    if (e.stopPropagation) {
        e.stopPropagation();
    }

    if (dragElement != this) {
        dragElement.innerHTML = this.innerHTML;
        this.innerHTML = e.originalEvent.dataTransfer.getData('text/html');
    }

    return false;
});
Run Code Online (Sandbox Code Playgroud)

html javascript jquery drag-and-drop jquery-events

7
推荐指数
1
解决办法
1万
查看次数

在.VS 2015 NET 4.5中使用字符串插值和名称

我使用的东西一样$"hello {person}",并nameof(arg1)在我的代码,但检查项目属性我针对.NET 4.5.

这个可以吗?我认为这些东西是在4.6中引入的.

该项目在我的机器上构建并运行正常 - 但我担心在部署它时会出现问题.

c# .net-4.5 visual-studio-2015 .net-4.6

7
推荐指数
2
解决办法
5207
查看次数

服务定位器 - 值得吗?

我们有一个大型解决方案(> 100个项目),几乎每种类型都使用服务定位器(示例1)或我们自己的类型字典(示例2)进行实例化.

例如,我们有:

IQuote quote = Registry.Resolve<IQuote>(); 
Run Code Online (Sandbox Code Playgroud)

要么

IQuote quote = Registry.Find<IQuote>(args);
Run Code Online (Sandbox Code Playgroud)

第二个示例转到配置文件,以查找使用反射实例化的具体对象.

通过代码后,它会让生活变得更加困难 - 因为不清楚使用的具体类型是什么 - 因此我们必须多次检查映射,因为我们正在尝试学习代码的一部分.使用以上作为示例按F12:quote.DoSomething()将带您进入接口定义.

它实现起来有点困难 - 我们需要一个接口+具体的类+配置映射,当替代只有一个类时.

想一想 - 我不知道有什么东西曾被"换掉"换成另一种类型 - 所以虽然我们已经实现了IoC但我们还没有使用它,或者至少 - 很少.

那么 - 它真的值得吗?我们是否错误/太多地实施了它?我误会了什么吗?

.net design-patterns service-locator

6
推荐指数
2
解决办法
396
查看次数

AngularJS ng-repeat with filter - notarray error

我有一个我正在显示的项目列表ng-repeat.我想添加一个过滤器来显示/隐藏已归档的项目.

我添加了一个复选框:

<input type="checkbox" ng-model="queryFilter.archived">Show archived messages
Run Code Online (Sandbox Code Playgroud)

在我的控制器中我有这个:

$scope.queryFilter = {
    archived: false
};
Run Code Online (Sandbox Code Playgroud)

我的项目列表显示在表格中.我尝试过以下方法:

<tr ng-repeat="message in messages | filter : queryFilter">

<tr ng-repeat="message in messages | filter : { archived: queryFilter.archived }">

<tr ng-repeat="message in messages | filter : queryFilter track by $index">
Run Code Online (Sandbox Code Playgroud)

我收到此错误:

错误:[filter:notarray]

预期的阵列但收到:{}

过滤确实有效,但我想知道为什么我会收到错误.

angularjs angularjs-ng-repeat angularjs-filter

6
推荐指数
3
解决办法
8073
查看次数