- PR -

js.ProgresBerを組み込みたい

1
投稿者投稿内容
ふりふり
会議室デビュー日: 2007/03/13
投稿数: 11
投稿日時: 2008-08-27 11:32
いつも参考にさせて頂いています。

Ajax ProgresBer(http://www.webappers.com/progressBar/)
を組み込むべく上記サイトを参考にテストしているのですが、
うまくいかないのでご質問させて頂きます。

VS2005(VB)で
Pageディレクティブに下記を設置しminus.gifをクリックすると
Onclickイベントが走り、プログレスバーが動作します。

この動作をASPのボタン(System.Web.UIControls.Botton)を
押したときに行いたいと思い、ボタン内に下記のように記述したのですが
postbackがかかる為か、初期値(ページロード時)に戻ってしまいます。
JavaScriptがあまり良く分かっていないので、
根本的に勘違いしているかも知れませんが、
解決方法をご存知の方がおられましたら、ご教授の程お願い致します。

Protected Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button1.Click

Button1.Attributes.Add("onclick", "return myJsProgressBarHandler.setPercentage('element1','+5');")

End Sub

-----------------------
<%@page-->
<script type="text/javascript" src="js/prototype/prototype.js"></script>
<script type="text/javascript"src="js/bramus/jsProgressBarHandler.js"></script>
<span style="color:#006600;font-weight:bold;">Program Efficiency</span>
<span class="progressBar" id="element1">0%</span>
<span class="options">
<a href="#" onclick="myJsProgressBarHandler.setPercentage('element1','+5');return false;">
<img src="img/icons/minus.gif" alt="" title="" onmouseout="$('Text1').innerHTML ='&laquo; Select Options'" onmouseover="$('Text1').innerHTML ='Minus 5%'" /></a>
-------------------------------------

くまっち
大ベテラン
会議室デビュー日: 2008/01/18
投稿数: 169
お住まい・勤務地: 茨城県のどこか。
投稿日時: 2008-08-27 18:52
サーバサイドのボタンクリックイベント(Button1_Click)で
スクリプトを吐き出してもタイミング的に遅いでしょう。

Page_Loadイベントで、スクリプトを吐き出すとか。
>Button1.Attributes.Add("onclick", "javascript:myJsProgressBarHandler.setPercentage('element1','+5'); return false;")

ボタンのOnClientClickプロパティに設定するとか。
>"javascript:myJsProgressBarHandler.setPercentage('element1','+5'); return false;"

ですかね。
ふりふり
会議室デビュー日: 2007/03/13
投稿数: 11
投稿日時: 2008-08-28 00:16
くまっちさん

ありがとうございます。
page_lodイベントに記述することで、実現することができました。
処理のされ方についても理解することができました。
ありがとうございました。

-------
Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load

If Not Me.IsPostBack Then
'初回表示時の処理
Else
'PostBack時の処理
Button1.Attributes.Add("onclick", "javascript:myJsProgressBarHandler.setPercentage('element1','+5'); return false;")
End If



1

スキルアップ/キャリアアップ(JOB@IT)