【问题标题】:Add on ready to my code添加到我的代码中
【发布时间】:2014-07-02 15:59:51
【问题描述】:

我正在尝试制作一个允许用户提交问题的列表。我正在使用淘汰赛,我可以让它完全按照我的意愿去做,但是当我尝试在 Microsoft Visual Studio 中进行调试时,它并不能按照我想要的方式工作。当我调试时,除了问题列表中缺少“测试问题”之外,该页面的打开方式与小提琴中的相同。您也可以在添加问题文本框中输入,但是当您点击提交时它会清除并且不会添加到问题列表中

有人告诉我我需要添加一个 onready,但我仍然是学习如何编码的新手并且不确定

A. 怎么做 B. 放在哪里

这是我的小提琴

http://jsfiddle.net/grahamwalsh/rCB9V/

这是我的代码

问题列表 (html)

 <!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Issue List</title>
<script src="Scripts/jquery-2.1.1.js"></script>
<script src="Scripts/knockout-3.1.0.js"></script>
<script src="Issuelist.js"></script>
<link type="text/css" rel="stylesheet" href="Issuelistcss.css" />
</head>
<body>
<div class='issuelist'>

<form data-bind="submit:addIssue">
    Add Issue: <input type="text" data-bind='value:issueToAdd, valueUpdate: "afterkeydown"' />
    <button type="submit" data-bind="enable: issueToAdd().length > 0">Add</button>
</form>

<p>Your Issues:</p>
<select multiple="multiple" height="5" data-bind="options:allIssues,   selectedOptions:selectedIssues"> </select>

<div>
    <button data-bind="click: removeSelected, enable: selectedIssues().length >  0">Remove</button>
    <button data-bind="click: sortIssues, enable: allIssues().length > 1">Sort</button>
</div>

</div>
</body>
</html>

CSS

body { font-family: arial; font-size: 14px; }
.issuelist { padding: 1em; background-color: #87CEEB; border: 1px solid #CCC; max-width: 655px; }
.issuelist input { font-family: Arial; }
.issuelist b { font-weight: bold; }
.issuelist p { margin-top: 0.9em; margin-bottom: 0.9em; }
.issuelist select[multiple] { width: 100%; height: 8em; }
.issuelist h2 { margin-top: 0.4em; }

js

var Issuelist = function () {
this.issueToAdd = ko.observable("");
this.allIssues = ko.observableArray(["test"]);
this.selectedIssues = ko.observableArray(["test"]);

this.addIssue = function () {
if ((this.issueToAdd() != "") && (this.allIssues.indexOf(this.issueToAdd()) < 0))
    this.allIssues.push(this.issueToAdd());
this.issueToAdd("");
};

this.removeSelected = function () {
this.allIssues.removeAll(this.selectedIssues());
this.selectedIssues([]);
};

this.sortIssues = function () {
this.allIssues.sort();
};
};

ko.applyBindings(new Issuelist());

【问题讨论】:

    标签: javascript knockout.js onready


    【解决方案1】:

    在页面准备就绪时使用 jQuery 运行函数:

    $(document).ready(function(){
      //Code goes here
    }
    

    【讨论】:

    • 那么我应该把 $(document).ready(function(){ 放在我的 js 文件的开头,把 } 放在最后吗?
    • 您只想包装文档加载时需要运行的内容。如果您发布的是所有 js 文件包含的内容,那么是的,整个事情需要在 $(document).ready 上运行。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-03-23
    • 2018-11-22
    • 1970-01-01
    • 1970-01-01
    • 2023-02-03
    • 2018-03-11
    • 2013-05-24
    相关资源
    最近更新 更多