淘汰赛js隐藏了我的HTML代码

时间:2017-10-22 20:32:57

标签: javascript html knockout.js

所以我做了“选择选项”,当用户选择我需要在输入中显示一些数据并且它可以工作,但只有当我从select中选择任何值时才会显示我的输入,但我需要始终显示我的输入,因为我需要这是另一个行动的输入

这是我的选择。

 <select size="2" style="height: 200px;width: 200px" class="selection 
    data-bind="options:solutions, optionsText:'name',value:selectedSolutions"></select>

输入我必须始终显示,只有当我从上面的选择中选择参数时才会显示

<form class="col-md-5" data-bind="with: selectedSolutions" style="margin-left:128px;">
      <div class="form-group">
        <label for="inputsm">Solution Name:</label>
        <input class="form-control input-sm" data-bind="value:name" id="inputsm" type="text">
      </div>
      <div class="form-group">
        <label for="inputdefault">Brief description:</label>
        <input class="form-control " style="height: 100px" data-bind="value:briefDescription" id="inputdefault" type="text">
      </div>
      <div class="form-group">
        <label for="url">Read more:</label>
        <input class="form-control input-lg" data-bind="value:readMore" style="height:150px" data-bind="value:" id="url" type="text">
      </div>
      <div class="form-group">
        <label for="inputlg">Solution manufacture URl:</label>
        <input class="form-control input-sm" id="inputlg" data-bind="value:manufactureUrl" type="text">
      </div>
    </form>

感谢您的帮助,对不起英语。

1 个答案:

答案 0 :(得分:1)

由于您使用with绑定,因此form标记内的任何内容都不会显示,除非selectedSolutions不为空。

我想在你的ViewModel中,你正在初始化selectedSolutions属性,如viewModel.selectedSolutions = ko.observable();

因此,您必须为selectedSolutions设置默认值,以确保始终显示form标记内的所有内容。有点像下面这样:

viewModel.selectedSolutions = ko.observable({
    name: "", // you could put any default value you want here, not just blank
    briefDescription: "",
    readMore: "",
    manufactureUrl: ""
});