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 に答える