2015-07-10 110 views
0

我想改变两个div的选择标记的变化,当特定的值被选中,所以你可以请看看我的代码,我做错了什么?jquery更改功能不起作用?

$(document).ready(function() { 
 
    $('#ads_site').change(function() { 
 
    if ($(this).val() == 'boss.az') { 
 
     $("#boss.az").css("display", "block"); 
 
    } 
 
    elseif($(this).val() == 'jobsearch.az') { 
 
     $("#jobsearch.az").css("display", "block"); 
 
    } 
 
    }); 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 

 
<form method="post" action="process.php"> 
 
    <select name="ads_site" id="ads_site"> 
 
    <option value="boss.az">boss.az</option> 
 
    <option value="jobsearch.az">jobsearch.az</option> 
 
    </select> 
 
    <div id="boss.az" style="display:none;"> 
 
    <center> 
 
     <h3>::Ads To Be Added::</h3> 
 
    </center> 
 
    <br> 
 
    <input type="text" class="from_page" name="from_page" placeholder="From Page No"> 
 
    <input type="text" class="to_page" name="to_page" placeholder="To Page No"> 
 
    </div> 
 
    <div id="jobsearch.az" style="display:none;"> 
 
    <center> 
 
     <h3>::Ads To Be Added::</h3> 
 
    </center> 
 
    <br> 
 
    <input type="text" class="from_ad" name="from_page" placeholder="From Ad No"> 
 
    <input type="text" class="to_ad" name="to_page" placeholder="To Ad No"> 
 
    </div> 
 
    <input type="submit" name="submit" class="login login-submit" value="Submit"> 
 
</form>

+0

检查你的JavaScript控制台,你有一个语法错误。 'elseif'应该是'else if' - 空间是必需的。 – Barmar

+0

@Barmar:是的,只是检查,这是一个语法错误,但仍然没有工作..! –

+1

可能的重复[如何通过jQuery选择html节点,当id包含点?](http://stackoverflow.com/questions/605630/how-to-select-html-nodes-by-id-with -jquery-when-the-id-contains-a-dot) – showdev

回答

4

有2个问题:

  1. 没有在JavaScript中没有elseif,你应该使用else if代替。
  2. 由于您的ID包含.您应该转义它们,否则jQuery会尝试选择一个具有boss ID和az类名称的元素。

    $(document).ready(function() { 
        $('#ads_site').change(function() { 
         if (this.value === 'boss.az') { 
          $("#boss\\.az").show(); 
          // in case that you want to hide the other element 
          // $("#jobsearch\\.az").hide(); 
         } 
         else if (this.value === 'jobsearch.az') { 
          $("#jobsearch\\.az").show(); 
         } 
        }); 
    }); 
    
+1

对''的好评。因为这个,我建议不要在ID中使用点。 – Barmar

+0

好..很好...我甚至都没有想过“。”它可能会认为它是一个类..和是的课程elseif是一个语法错误..! –