js中如何获取、li 标签中的中的value属性的值

js中怎么获取、li 标签中的中的value属性的值
<script type="text/javascript">


  var ul=document.getElementById("UlLi").getElementsByTagName("li");
            for(var i=0;i<ul.length;i++){
               var cityid=ul[i].getAttribute("value");
   alert("cityid=="+cityid);
            
            }

</script>


<div>
       <ul id="UlLi">
        <li value="11a">111a</li>
 <li value="22">22a</li>
 <li value="333">33a</li>
 <li value="44">44a</li>
       </ul>
</div> 


---------------------------------

为什么这样获取不到值、急求高手回复、谢谢。
------解决思路----------------------
<script></script>
放置到<div>后面

html是逐行扫描的。
------解决思路----------------------
顺序问题。想放上面的话,你可以在你的js外面加个window.onload = function(){}
------解决思路----------------------
把JS  放到 body 结束标签后面就好了,html加载解析顺序是从上往下逐行解析的,按你这写法,当解析你取值的那行的时候,其实你索取对象还是没加载的,根本还不存在,所以取不到值
------解决思路----------------------
jquery
$("#id").arrt("value");