2010-11-29 18 views
0

私はUpdatePanel ---> LinkBut​​ton - > Div --->テーブル構造を使用しています。私は、LinkBut​​tonコントロールをクリックするとdiv要素は、最初のテーブル形式を表示しており、そのOnClickイベントにコードを実行する必要があり は、私が直面しています問題は、私は、以下に示すように多くのjqueryの機能を試したです:divのボタンを非表示にするUpdatePanelでクリック

<asp:LinkButton ID="lnkbtnUnitAdd" runat="server" OnClientClick="Toggledivs()" OnClick="lnkbtnAdd_Click" Text="Add" ></asp:LinkButton> 

私が使用している場合でも:

$(document).ready(function() 
{ 
    $("#lnkbtnUnitAdd").click(function() { 
     $("#divUnit").show("slow"); return false; 
    }); 
}); 

または

function Toggledivs() 
{ 
    $("#lnkbtnUnitAdd").click(function() { 
     $("#divUnit").show("slow"); return false; 
    }); 
} 

かのLinkBut​​ton

にOnClientClickプロパティを使用せずに

ボタンで関数がfalseを返すので、結果は同じです。Onclient clickまたはdocument.ready function()したがって、ボタンOnclickイベントは発生していません。

私が偽を返すと、divは正しく表示されません。

プロセス全体がアップデートパネルで実行されているため、どのように対処するかお手伝いしてください。

答えて

0

この場合、Control.ClientIDを使用する必要があります。試してみてください

$(document).ready(function(){ 
    $("#<%=lnkbtnUnitAdd.ClientID%>").click(function() { 
     $("#divUnit").show("slow"); return false; 
    }); 
}); 

HTMLでイベントハンドラを追加することはお勧めしません。しかし、次のコードは動作するはずです。クリックイベントを再度割り当てる必要はありません。あなたはonclick関数が実行取得したい場合は

function Toggledivs() 
{ 
    $("#divUnit").show("slow"); 
    return false; 
} 

return true; 

を与えます。

+0

本当の問題が発生した場所。これは、関数はfalseを返しているように、私は、そのボタンのOnClickイベントに取得することはできませんよ、である「lnkbtnUnitAdd」私はいくつかのサーバーを書いています一部のコントロールを無効にして有効にするためのサイドコード。 – user523917

+0

'return false;の代わりに' return true; 'を指定すると、' onclick'関数が実行されます。 – rahul

0

__doPostBackアニメーションが完了した後でなければ呼び出されません。コールバック関数をjqueryのshowの2番目のパラメータに渡すことで可能です。 UPDATES

$(document).ready(function() 
{ 
    $("#lnkbtnUnitAdd").click(function (e) { 
     var btnName = $(this).attr('name');   
     $("#divUnit").show("slow",function(){ 
      __doPostBack(btnName,''); //now call the actual postback event  
     }); 

     e.preventDefault(); //prevent default postback behavior 
     return false; 
    }); 
}); 
+0

実際に自分のコードを掘り下げたとき、自分のコード構造がUpdatepanle ---> linkbutton ---> UpdatePanel ---> divタグのように見えるので、ボタンをクリックするとdivタグが表示:ページの読み込み時に部分的に表示されず、デフォルトモード(トグルのようなもの)になってしまいました。この問題を解決するにはどうすればいいですか? – user523917

+0

最初はうまくいきませんでしたが、次のコードは機能しましたが、問題は機能です。Toggledivs(){ setTimeout(function(){alert( 'hi'); $( "#divUnit")。show( "slow");} 0) ; }しかし、問題はアラートボックスを克服する方法です – user523917

+0

もしあなたがこのページに行き、添付ファイルをダウンロードしてください。 http://www.daniweb.com/forums/thread328075-3。HTML 私はこの問題を解決するために、より心配として、 親切に助けてください、私は私の答えを更新した事前 – user523917

関連する問題