有什么区别onLoad,onDomready,没有包装-in和HTML中的包装-in?

时间:2016-03-09 17:01:34

标签: javascript jquery html css

HTML

<select name="skills" class="ui fluid search dropdown" multiple="">
  <option value="">State</option>
  <option value="WV">West Virginia</option>
  <option value="WI">Wisconsin</option>
  <option value="WY">Wyoming</option>
</select>

JS

$('.ui.fluid.search.dropdown')
      .dropdown({
        maxSelections: 3
      });

我想使用semantic-ui下拉菜单。相同的代码在JSFiddle中工作,但在我的项目中不起作用。当我更改Javascript加载类型 onLoad 没有wrap -in 代码在JSFiddle中工作时。但我不知道这是什么意思?我如何申请我的HTML?

  

修改

代码工作简单的html和php,但是当来自数据库的选项值和文本时不起作用。这是我的代码:<select class="ui fluid search dropdown" name="lang_skill[]" id="multi-select" multiple="multiple" > <?php$languages_array =(array)$GLOBALS['obj_selectAndUpdateController']>search_info_languages();$count‌​_languages = count($languages_array);for ($i = 0; $i < $count_languages; $i++) {?><option value="<?php echo $languages_array[$i]['id'] ?>"> <?php echo $languages_array[$i]['description'] ?> </option><?php }?></select> </p>

  

编辑2

我解决了它,它与 bootstrap.js

配合

1 个答案:

答案 0 :(得分:0)

你必须等到你的DOM准备就绪,因为你正在使用jQuery,你可以使用这种语法:

$(function() {
   // do your thing
});

这相当于JSFiddle的DomReady属性。

onLoad的等价物是放入body标签,&#34; onload&#34;属性设置为函数。

头部和身体中的无包裹告诉JSFiddle只是将代码放在头部或身体内的脚本中,它不适合你,因为你的DOM还没有为你做好准备应用这种行为。

希望我足够清楚。