我有一个MainContent div,其中包含可以从ajax加载的网站的主要内容.
我如何才能知道是否$("#MainContent").load("someUrl")被调用,所以我能够将新的历史状态推送到webbrowser?
我正在使用下面的库:http://bootstrap-table.wenzhixin.net.cn/documentation/
我将json对象加载到这个表中工作正常,但现在出现了问题.我希望能够对列进行排序.
我的Json布局如下:
[{"Total": 12345.56, "Name": "Monkey1", "TotalFormatted": "$ 12.345,56"},{"Total": 13345.56, "Name": "Monkey3", "TotalFormatted": "$ 13.345,56"},{"Total": 11345.56, "Name": "Monkey2", "TotalFormatted": "$ 11.345,56"}]
<table id="test" data-page-size="10" data-pagination="true" data-unique-id="true" data-show-footer="false">
<thead>
<tr>
<th data-field="Name">Name</th>
<th data-field="TotalFormatted" data-sort-name="Total" data-sortable="true" data-align="right">TotalFormatted</th>
</tr>
</thead>
</table>
Run Code Online (Sandbox Code Playgroud)
我想显示TotalFormatted数据,但我想用Total属性对此列进行排序,因为TotalFormatted不能用于此.在文档中,我看到以下内容:
data-sort-name:提供可自定义的排序名称,而不是标题中的默认排序名称或列的字段名称.例如,列可能会显示"html"的fieldName值,例如" abc ",但要排序的fieldName是"content",其值为"abc".
但是,如果数据没有正确排序,是否有人对此进行过表达或者我误解了某些内容?
我试图加载不同的模板后,用户在登录表单所在的同一个地方验证了他自己.我可能想出了问题,我认为这是因为我不在同一范围内工作.
我有一个名为模板的属性,我在用户成功登录时更改了此方法存在问题,因为如果我AccountCtrl再次调用模板将再次使用登录模板覆盖:
var AccountCtrl = WorkerApp.controller('AccountCtrl', function ($scope, $location, AccountService) {
$scope.template = 'Home/Template/login';
$scope.Login = function () {
$scope.template = "Home/Template/register";
};
};
}
});
Run Code Online (Sandbox Code Playgroud)
在我的index.html中,我在 ng-view 之外有一些html :
<div class="container">
<div class="header">
<div class="loginView">
<div ng-include="template" ng-controller="AccountCtrl"></div>
</div>
</div>
</div>
Run Code Online (Sandbox Code Playgroud)
和我的登录模板
<form name="login" ng-controller="AccountCtrl">
<button class="btn btn-primary btn-sm" ng-click="Login()">Login</button>
{{template}}
</form>
Run Code Online (Sandbox Code Playgroud)
我对Angular很新,并且无法找出解决这个问题的方法.在我的模板中我可以删除,ng-controller="AccountCtrl"但后来我无法调用控制器中的登录功能(我已经测试过).
如果我有一个需要访问5个不同存储库的视图,我现在正在这样做:
public class MyClass
{
private readonly IRepo1 rep1;
private readonly IRepo2 rep2;
...
public MyClass(IRepo1 r1, IRepo2 r2, IRepo3 r3, IRepo4 r4...)
{
rep1 = r1;
rep2 = r2;
re3 = r3;
}
}
Run Code Online (Sandbox Code Playgroud)
这种方法的问题是构造函数越来越大,如果构造函数中的某些内容发生了变化,我必须在整个系统中编辑更改.如何避免这个问题?
我考虑过创建一个构建器类,它将负责创建存储库并将它们解析为视图.或者这是一个糟糕的方法?
现在我已经尝试解决这个问题几个小时了,我即将放弃......
我正在使用Telerik的MVC 3网格控制器.在我的网格中,我希望下拉列表选择的项目对应于用户的角色.下拉列表具有所有用户角色.
@(Html.Telerik().Grid(Model)
.Name("Grid").TableHtmlAttributes(new { width="800"})
.Columns(columns =>
{
//if (userIsInWhateverRole){
// columns.Template(o => Html.Action(GenerateYourLinkStuffHere));
//}
columns.Bound(o => o.Name).Width(150);
columns.Bound(o => o.Email).Width(120);
columns.Template(
@<text>
@Html.DropDownList(item.Role, (IEnumerable<SelectListItem>)item.Roles)
@Html.DropDownListFor(x => item.Role, (IEnumerable<SelectListItem>)item.Roles)
</text>
).Width(120);
})
.Sortable()
.Scrollable()
.Groupable()
.Filterable()
.Pageable(paging => paging.PageSize(5))
)
Run Code Online (Sandbox Code Playgroud) model-view-controller asp.net-mvc telerik asp.net-mvc-3 drop-down-menu
现在我用了两天时间让 Mat 表工作。我想将公司列表加载到表中。
但我唯一看到的是:
没有错误或任何东西,只是空白。我预计至少会看到一个包含一列“名称”的表格。
这是我的组件和数据源:
import { OnInit, Component, ChangeDetectorRef } from "@angular/core";
import { CompanyService } from "../../../../services/company.service";
import { CompanyListItem } from "../../../../models/CompanyListItem";
import { Observable } from "rxjs/Observable";
import 'rxjs/add/observable/of';
import { DataSource } from "@angular/cdk/collections";
@Component({
selector: "company-list",
templateUrl: "./companylist.component.html"
})
export class CompanyListComponent implements OnInit {
companys: CompanyListDataSource = new CompanyListDataSource(this.companyService);;
pagenumber: number = 0
numberOfRowsPerPage: number = 25
displayedColumns: ['Name', 'Email']
constructor(private companyService: CompanyService) {
}
ngOnInit(): void {
this.companyService.GetPaged(this.pagenumber, this.numberOfRowsPerPage).subscribe((succ) => { …Run Code Online (Sandbox Code Playgroud) 最近几天我试图让自动填充字段的jqgrid工作,现在我可以让它使用本地数据,但一旦我试图从我的控制器数据获取数据没有得到解析.
查看代码:
{ name: 'EanNummer', index: 'EanNummer', width: 65, sortable: true, editable: true, edittype: 'text', editoptions: {
dataInit:
function (elem) {
$(elem).autocomplete({ minLength: 0, source: '@Url.Action("GetBrands")' })
.data("autocomplete")._renderItem = function (ul, item) {
return $("<li></li>")
.data("item.autocomplete", item)
.append("<a>" + item.Id + ", " + item.Name + "</a>")
.appendTo(ul);
};
}
}
},
Run Code Online (Sandbox Code Playgroud)
如果不是源:url我使用source:["c ++","java","php","coldfusion","javascript","asp","ruby"]例如代码工作正常并显示,所以某事我的控制器端代码一定是错的
控制器代码:
public JsonResult GetBrands()
{
string vendorId = "";
var username = "";
var name = System.Web.HttpContext.Current.User.Identity.Name;
var charArray = name.Split("\\".ToCharArray());
username = charArray.Last();
vendorId = …Run Code Online (Sandbox Code Playgroud) 如果某些会话变量为空,我想导致部分视图而不是重定向结果,我有点困惑。是否可以?如果是这样怎么办?我可以看到有一个 PartialViewResult,但我不知道如何使用它。
public class XXActionFilter : ActionFilterAttribute, IActionFilter
{
public override void OnActionExecuting(ActionExecutingContext filterContext)
{
HttpContext context = HttpContext.Current;
if ((context.Session[item] == null))
{
filterContext.Result = my partial view
return;
}
base.OnActionExecuting(filterContext);
}
}
Run Code Online (Sandbox Code Playgroud) 我的问题是我想用单一选择来写这个:
.btn-primary > i.glyphicon {
color: #ffffff;
}
.btn-primary > span.glyphicon {
color: #ffffff;
}
Run Code Online (Sandbox Code Playgroud)
但是这个 :
.btn-primary > i.glyphicon, span.glyphicon {
color: #ffffff;
}
Run Code Online (Sandbox Code Playgroud)
不起作用.因为所有span.glyphicon标签都是白色的.怎么解决这个?
我不确定我在做什么实际上是使用 DI 进行单元测试的“正确”方式。现在我要求我的 ViewModelLocator 实际创建我需要的所有实例,然后获取我需要测试的实例,这使得测试单个实例变得非常简单,因为让我们假设 Receipt 需要创建一个 Reseller 对象,经销商需要一个要创建的用户对象,用户需要创建一些其他对象,这会创建一系列对象来创建只是为了测试单个实例。
使用通常的接口将被模拟并解析为您想要创建的对象,但是简单的实体/视图模型如何?
在涉及 DI 的情况下进行单元测试的最佳实践是什么?
public class JournalTest
{
private ReceiptViewModel receipt;
private ViewModelLocator locator;
[SetUp]
public void SetUp()
{
locator = new ViewModelLocator();
receipt = SimpleIoc.Default.GetInstance<ReceiptViewModel>();
}
[TearDown]
[Test]
public void CheckAndCreateNewJournal_Should_Always_Create_New_Journal()
{
receipt.Sale.Journal = null;
receipt.Sale.CheckAndCreateNewJournal();
Assert.NotNull(receipt.Sale.Journal);
}
}
Run Code Online (Sandbox Code Playgroud)