通过Javascript问题关注选项卡

时间:2016-10-28 07:10:48

标签: javascript html

我的HTML页面有2个标签 settings1,settings2 。我想根据javascript中的tab_id来关注选项卡。我的代码如下;

HTML

<form action="action_here" method="post" enctype="multipart/form-data" name="form11">
    <ul class="tab">
        <li><a href="javascript:FormSubmit('1','btn_tab1');" class="tablinks" id="selected_tab1" onclick="openTab(event,'settings1','1');" onfocus="openTab(event,'settings1','1')">settings1</a></li>
        <li><a href="javascript:FormSubmit('2','btn_tab2');" class="tablinks" id="selected_tab2" onclick="openTab(event,'settings2','2')" onfocus="openTab(event,'settings2','2')">settings2</a></li>
    </ul>
    <input type="text" id="tab_id1" name="tab_id" >
</form>

的Javascript

var tab_id = document.getElementById("tab_id1").value;
if(tab_id == 1){
    alert("1");
    document.getElementById('selected_tab1').focus();
} else if (tab_id == 2) {
    alert("2");
    document.getElementById('selected_tab2').focus();
}

的问题:

  1. 首次加载页面时,未选择任何标签。我想选择标签1 设置1
  2. 2.当我选择标签时,标签不会被选中,但是tab_ids正在通过javascript打印。

    Plaese帮助我。

1 个答案:

答案 0 :(得分:0)

您希望确保在DOM内容准备好后调用您的代码。如果您不想使用jQuery之类的内容,可以执行以下操作:

function ready(fn) {
  if (document.readyState != 'loading'){
    fn();
  } else {
    document.addEventListener('DOMContentLoaded', fn);
  }
}

ready(function() {
  // your code
})

文档就绪的实施取自you might not need jquery