0

我有一个如下项目的下拉列表,我想单击将“类”或“继承”等名称发送到我的控制器。

<li><a href="#">Pointers</a></li>   
<li><a href="#" class="parent">Classes</a>
 <ul>
  <li><a href="#">Shapes</a></li>
  <li><a href="#">Submenu</a></li>
 </ul>
</li>
<li><a href="#">Inheritance</a></li>
<li><a href="#">Polymorphism</a></li>
<ul>

我的问题是是否应该使用 Javascript,例如:

   <li><a href="#" id="someId" onclick="SomeMethod(this);" > Pointers</a>

那么如何在我的函数中检索元素并发送到控制器?

或者我可以使用使用表单操作吗?

4

3 回答 3

1
function SomeMethod(item) {
    var text = item.firstChild.nodeValue;
    ....
    window.location.href = "controller/action/" + text;
}
于 2012-09-10T01:44:42.050 回答
1

不需要javascript...

HTML:

<li><a href="the_controller/the_method/pointers">Pointers</a></li>   
<li><a href="the_controller/the_method/classes" class="parent">Classes</a>
 <ul>
  <li><a href="the_controller/the_method/shapes">Shapes</a></li>
  <li><a href="the_controller/the_method/submenu">Submenu</a></li>
 </ul>
</li>
<li><a href="the_controller/the_method/inheritance">Inheritance</a></li>
<li><a href="the_controller/the_method/polymorphism">Polymorphism</a></li>
<ul>

控制器:

class The_controller extends CI_Controller{
    function the_method($the_word){
        /*do something with $the_word;*/
    }
}
于 2012-09-10T02:14:11.643 回答
0

对于给出的示例,通过内联 onclick,它可以使用 innerHTML 工作。

<li><a href="#" id="someId" onclick="SomeMethod(this.innerHTML);" > Pointers</a>
于 2012-09-10T02:02:39.937 回答