我目前正确运行,其中下拉列表选择更改将显示一些文本,同时隐藏另一段文本。
更改下拉列表时触发的javascript:
window.DropdownValueChange = function(event) {
var jqueryValue = $(event);
jqueryValue.closest('td').find('p').hide();
var className = '.' + event.options[event.selectedIndex].value + '-class';
jqueryValue.closest('td').find(className).show();
}
HTML对象已更改:
<p class="male-class">I am a male</p>
<p class="female-class">I am a female</p>
但是,最初呈现HTML时并非如此。为什么onchange函数没有在UI的负载上正确触发?
答案 0 :(得分:0)
您onchange
未在页面加载时触发。这可以通过向<p>
标记添加可视化数据绑定来解决:
<p class="male-class" data-bind="visible: gender == 'male'">
I am a male
</p>
<p class="female-class" data-bind="visible: gender == 'female'">
I am a female
</p>
更新了fiddle