加上return (false); 就不执行了
<div onclick="alert('div')">
   <select onclick="return (false);alert('select');"></select>
</div>

解决方案 »

  1.   

    你想在div的click事件里做啥,你就在select的click事件里调用啥不就行了?
      

  2.   

    因为我不想让select框下拉。而是直接在这个select框周围加上小方块用来拖拉等。to lfecnu:
    谢谢你的回答。不过用你的方法,select框还是会下拉的。
      

  3.   

    你这种情况是因为你的网景的浏览器调试的,你在IE里执行就可以了,网景和IE处理事件的方式不一样,比如一个select的click事件触发,网景是先执行body的click事件,再执行div的click事件,再执行select的事件,而IE是先执行select的click事件,再执行div的click事件,最后执行body的click事件
      

  4.   

    实在不行,我就在design time 时disable掉这些元素,在runtime时,在显示这些元素了。
      

  5.   

    我认为最好的方式是:点击第一下的时候,显示select框周围的小方块,再点击一下就可以进去对select框下拉了。