1

私はこのような機能を持っています:

function contentDisp()
{
$.ajax({
url : "../Patient/brest/ros_brest.php",
success : function (data) {
$("#dynamicContent").html(data);
}
});
}

私はこのようなメニューを持っています:

<div  id="leftmenu">
<ul id="accordion">
    <li><div>BREAST</div>
        <ul>
            <li ><a href="#" onClick="contentDisp();">BREAST</a></li>
                    </ul>

エンド ユーザーがメニュー項目をクリックすると、関連するページが割り当てられた div に表示されます。すべてが正常に機能していますが、すべてのメニュー項目に対して同じことをしたい場合は、これをどのように行う必要があります:動的に渡します。

事前にありがとうラムサイ

4

3 に答える 3

3

そんな感じ:

<script type="application/javascript">
$(document).ready(function() {
   $("a.dyn-load").on("click", function() {
      $("#" + $(this).attr("data-target")).load($(this).attr("href"));
      return false;
   });
});
</script>

<a href="/some/url" class="dyn-load" data-target="dyn-content">bleh</a>
<a href="/some/url2" class="dyn-load" data-target="dyn-content">bleh2</a>
<div id="dyn-content"></div>
<a href="/some/url3" class="dyn-load" data-target="dyn-content2">bleh3</a>
<a href="/some/url4" class="dyn-load" data-target="dyn-content2">bleh4</a>
<div id="dyn-content2"></div>

デモ

于 2012-05-23T06:23:29.293 に答える
2
    function contentDisp(url)
{
$.ajax({
url : url,
success : function (data) {
$("#dynamicContent").html(data);
}
});
}

<li ><a href="#" onClick="contentDisp("../Patient/brest/ros_brest.php");">BREAST</a></li>

ただし、私が提案するのは、onClick ハンドラーを削除し、url を href として配置することです。そのように js をオフにしても、ユーザーはまだ何かを得ます (詳細については、プログレッシブ エンハンスメントについて読んでください)。

$("#accordion>a").click(function()
{
$.ajax({
url : $(this).attr("href"),
success : function (data) {
$("#dynamicContent").html(data);
}
});
 return false;
});

デモ: http://jsbin.com/ixifah/4

于 2012-05-23T06:07:43.480 に答える
1

あなたがすることができます:

<a href="some_page_url" onClick="contentDisp(this);">BREAST</a>

function contentDisp(obj) {
  var someurl = $(obj).attr("href");
  $.ajax({
        url : someurl,
        success : function (data) {
            $("#dynamicContent").html(data);
        }
  });
}
于 2012-05-23T06:08:01.590 に答える