1

html list から値を取得しようとしています<li>

<ul>
    <li><a>Main Menu</a>
        <ul class="leftbutton" >
            <li value="List1"><a>Sampe 1</a></li>
            <li value="List2"><a>Sample 2</a></li>
            <li value="List3"><a>Sample 3</a></li>
            <li value="List4"><a>Sample 4</a></li>
            <li value="List5"><a>Sample 5</a></li>
        </ul>
    </li>
</ul> 

<iframe id="iframeid" width="100%" height="100%" align="middle"></iframe> 

function changeList()
{
    var iframe = document.getElementById("iframeid");  
    var url = document.getElementById("selectedlist").value + ".html"; 
    iframe.src = url;
}

リストから値を取得するには、どこに onClick="changeList()" を配置しますか?

4

4 に答える 4

4

ここでいくつか間違っています。

  1. HTML リスト項目 ( <li>) に値がありません
  2. HTML リストには「選択された項目」がありません
  3. 呼び出して「選択した」アイテムを取得することはできませんgetElementById()

これが私の代替提案です:

<ul>
  <li><a>Main Menu</a>
    <ul class="leftbutton" >
      <li><a href="List1.html" onclick="return changeList(this);">Sample 1</a></li>
      <li><a href="List2.html" onclick="return changeList(this);">Sample 2</a></li>
      <li><a href="List3.html" onclick="return changeList(this);">Sample 3</a></li>
      <li><a href="List4.html" onclick="return changeList(this);">Sample 4</a></li>
      <li><a href="List5.html" onclick="return changeList(this);">Sample 5</a></li>
    </ul>
  </li>
</ul> 

<iframe id="iframeid" width="100%" height="100%" align="middle"></iframe> 

<script type="text/javascript">
function changeList(a)
{
  var iframe = document.getElementById("iframeid");
  iframe.src = a.href;
  return false;
}
</script>

考察: JavaScript が無効化されていても、(基本的には) 動作します。この関数は を返すfalseため、JavaScript が有効になっている場合、リンクをクリックすると href ナビゲーションがキャンセルされます。

HTML 4.01 Transitional までは、JavaScript をまったく使用せずにこれを行うことも可能であることに注意してください。フレーム名を持つtarget属性で十分です。

<ul>
  <li><a>Main Menu</a>
    <ul class="leftbutton" >
      <li><a href="List1.html" target="iframename">Sample 1</a></li>
      <li><a href="List2.html" target="iframename">Sample 2</a></li>
      <li><a href="List3.html" target="iframename">Sample 3</a></li>
      <li><a href="List4.html" target="iframename">Sample 4</a></li>
      <li><a href="List5.html" target="iframename">Sample 5</a></li>
    </ul>
  </li>
</ul> 

<iframe id="iframeid" name="iframename" width="100%" height="100%" align="middle"></iframe> 
于 2009-05-24T07:12:44.630 に答える
1

インラインiframeについて100%確信はありませんが、単純に使用できます

<li><a href="/path/to/html" target="myIframeId">Value</a></li>

これはhtml4strictには有効ではありませんが、transitionalで有効であり、すべてのブラウザで機能します。

于 2009-05-24T06:56:11.777 に答える
1

li属性値がありますが、値は整数でなければなりません。それがポイントです:

             <li value="1"><a>Sampe 1</a></li>
            <li value="2"><a>Sample 2</a></li>
            <li value="3"><a>Sample 3</a></li>
            <li value="4"><a>Sample 4</a></li>
            <li value="5"><a>Sample 5</a></li>
于 2011-06-25T09:04:52.853 に答える
0

これをアンカータグに配置します。クリックしているものだと思います。

于 2009-05-24T06:33:54.817 に答える