小编del*_*xfe的帖子

knockoutjs在foreach绑定中点击绑定

编辑:问题与绑定无关,而是与一个简单的JavaScript错误有关.

我有一个关于foreach绑定中的点击绑定的问题.我有一个列表,其中的项目显示一个下拉框,用于从主数据中选择一个值.可以在该列表中添加和删除项目.删除项目的按钮嵌套在foreach绑定中.因此我希望我应该用$ parent绑定它

<button data-bind="click: $parent.removeNumber">-</button>
Run Code Online (Sandbox Code Playgroud)

这不起作用.但以下版本有效:

<button data-bind="click: removeNumber">-</button>
Run Code Online (Sandbox Code Playgroud)

我不懂为什么.

代码:

<h2>numbers:</h2>
 <ul data-bind="foreach: numbers">
     <li>
       <select data-bind="value: id, 
                          options: masterData, 
                          optionsText: 'caption', 
                          optionsValue: 'id'"></select>
        <br />
        value: <span data-bind="text: id"></span>
        <br />
        <button data-bind="click: $parent.removeNumber">-</button>      
    </li>
</ul>
<button data-bind="click: addNumber">+</button>
Run Code Online (Sandbox Code Playgroud)

function ViewModel() {
    self.masterData = [{ id: 1, caption: "One"},
                       { id: 2, caption: "Two"}];

   self.numbers = ko.observableArray([{
        id: ko.observable(2)}]);

    self.addNumber = function() {
        self.numbers.push({
            id: ko.observable(2)
        });
    };


    self.removeNumber = function(item) {
        self.numbers.destroy(item);
        console.log("removed" + item); …
Run Code Online (Sandbox Code Playgroud)

javascript knockout.js

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

knockout-validation插件,从特定属性获取isValid

是否有可能看到在敲除验证插件中是否只有一个属性有效?

我在文档中看不到任何对它的引用,只能看到整个模型是否有效.

例如,我希望计算的observable具有不同的值,具体取决于另一个observable是否有效.

knockout-validation

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

Jasmine:测试一个setTimeout函数会抛出一个错误

我想测试一个方法的错误处理,该方法使用setTimeout进行调度.错误将在计划部分中抛出,即:

function sutWithSetTimeout() {
    setTimeout(function () { throw new Error("pang"); }, 1);
}
Run Code Online (Sandbox Code Playgroud)

如何测试是否抛出错误并且它具有正确的消息?

javascript unit-testing asynchronous settimeout jasmine

4
推荐指数
1
解决办法
1936
查看次数

淘汰验证不起作用

这可能是最简单的问题,但我无法解决这个问题.我页面上的验证无效.每次我提交页面时,所有输入字段都空白,会生成一条警告,说"失败".如果我输入所有具有某些值的字段,则数据已成功提交.

这是我的HTML:

@{
ViewBag.Title = "Exercise10";
}
<html>
<head>

<script src="../../Scripts/jquery-1.6.2.js" type="text/javascript"></script>
<script src="../../Scripts/knockout-2.2.1.js" type="text/javascript"></script>
<script src="../../Scripts/knockout.mapping-latest.js" type="text/javascript"></script>
<script src="../../Scripts/json2.js" type="text/javascript"></script>
<link href="../../Content/ExerciseStyle.css" rel="stylesheet" type="text/css" />
<script src="../../Scripts/Popup.js" type="text/javascript"></script>


<link rel="stylesheet" href="http://code.jquery.com/ui/1.10.0/themes/base/jquery-    ui.css" />
<script src="http://code.jquery.com/ui/1.10.0/jquery-ui.js"></script>
<script src="../../Scripts/DatePicker.js" type="text/javascript"></script>
<script src="../../Scripts/knockout.validation.js" type="text/javascript"></script>
<script src="../../Scripts/knockout-validator.js" type="text/javascript"></script>
<script src="../../Scripts/knockout-validator-extensions.js" type="text/javascript"></script>
<link href="../../Scripts/extensions.css" rel="stylesheet" type="text/css" />

</head>
<body>
<form action="" method="post">
<div id="MainArea">
    <table id="tbllist" align="center" style="margin-left: 15px; width: 96%; margin-      right: 15px;">
        <tr>
            <th colspan="3" align="left">
                <div id="title_p">
                    Enter Following Entries</div>
            </th> …
Run Code Online (Sandbox Code Playgroud)

knockout-validation

4
推荐指数
1
解决办法
7169
查看次数

Android PackageManger.getLaunchIntentForPackage() 不抛出记录的异常

我尝试从PackageManager. 根据文档(http://developer.android.com/reference/android/content/pm/PackageManager.html#getLaunchIntentForPackage(java.lang.String)),PackageManager.NameNotFoundException如果在系统,null如果包不包含启动活动,则返回。

当我尝试捕获异常时,出现编译错误:

    PackageManager manager = getPackageManager();
    try{
        Intent launchAppIntent = manager.getLaunchIntentForPackage("somePackageName");
        //...
    } catch (PackageManager.NameNotFoundException exception){

    }
Run Code Online (Sandbox Code Playgroud)

java:异常android.content.pm.PackageManager.NameNotFoundException永远不会在相应的try语句的主体中抛出

我认为一种可能性可能是该方法的行为发生了变化并且它总是返回null而不是抛出异常。但是,我还应该在调用周围包裹一个 try 块吗?

我应该如何继续解决这个问题?

我目前正在针对 Android 4.2.2 进行构建。

java android android-4.2-jelly-bean

2
推荐指数
1
解决办法
2672
查看次数