2015-10-16 64 views
2

我在.less中创建了一个对象,并且我在php文件中创建了几个按钮,当在php文件中单击按钮时,我想要隐藏一些对象。这里是我的PHP代码JS函数.hide

<label for="select-pattern">Select</label> 
      <select name="" id="select" data-native-menu="false"> 
      <option data-placeholder="true">Select</option> 
      <option name="asdf" value="pat">Select this</option> 
      <option name="fdas" value="tap">select now</option> 
    <select> 

这里是我的JS代码,

$(document).ready(function(){ 
    $("#asdf").click(function(event){ 
    //Your actions here 
     $('#object1, #object2').hide(); 

    }); 
}); 

少的文件是我创建的对象,这里为

#object1, #object2 { 
    width: 46px; 
    height: 23px; 
    background-color: #fff; 
    position: absolute; 
    left: 50%; 
    margin-left: -10px; 
    z-index: 10; 
    } 

为什么ISN代码隐藏功能不起作用?是他们在代码中的错误?

+1

你的代码在哪里?只有那个名字的下拉菜单 –

+0

所以会下降,将无法正常工作? – user5451793

+0

你需要使用变化事件,这将比点击 –

回答

0

你有HTML而不是PHP。 我不相信点击事件对选项有效。 你必须制作一个按钮,并将id设置为asfd而不是元素的名称。

<input type="button" id="asdf" value="Hide objects"> 
0

试试这个。 (假设object1和object2引用DOM中的html元素)。

您需要更改选择并检查其值。如果匹配,则隐藏object1,object2。

<label for="select-pattern">Select</label> 
       <select name="" id="select" data-native-menu="false"> 
       <option data-placeholder="true">Select</option> 
       <option name="asdf" value="pat">Select this</option> 
       <option name="fdas" value="tap">select now</option> 
     <select> 
      <div id="object1">Object 1</div> 
      <br> 
       <br> 
       <div id="object2">Object 2</div> 
$().ready(function() 
{ 
$("select").change(function(){ 
     if($(this).val() == "pat") 
     $('#object1, #object2').hide(); 
    else 
     $('#object1, #object2').show(); 

    }); 
}); 

http://jsfiddle.net/9tvmac08/1/

0

您可以使用此:

$(document).ready(function(){ 
    $("#test").on("change", function(){ 
     var id = $(this).val(); 
     $(".objects #"+id).toggle(); 
    }); 
}); 

或者,根据您的代码:

$("#object1, #object2").toggle(); 

https://jsfiddle.net/8mxqvLwb/

如果はnt将某些事件绑定到select中的选项元素,您必须将其绑定到select元素。