標準のaspボタンがあり、クリックするとトリガーされます。
protected void btnDealItem_Click(object sender, EventArgs e)
{
divMyDiv.Style.Add("background-position", "70px 0");
}
問題は、ボタンがクリックされたときに背景が右に70ピクセルシフトしないことです。
これはこれを行う正しい方法ですか、それとも構文の問題ですか?
標準のaspボタンがあり、クリックするとトリガーされます。
protected void btnDealItem_Click(object sender, EventArgs e)
{
divMyDiv.Style.Add("background-position", "70px 0");
}
問題は、ボタンがクリックされたときに背景が右に70ピクセルシフトしないことです。
これはこれを行う正しい方法ですか、それとも構文の問題ですか?
JQuery を使用してクライアント側で実行できます: http://jquery.com/
あなたのコードから、ボタンのクリックイベントで他に何もしたくないと仮定しています。この行return false;
は、ボタンがページをポストバックするのを防ぎます。
$(document).ready(function () {
$("#" + <%= btnDealItem.ClientID %>).click(function() {
$(this).attr("style", "background-position:70px 0;" );
return false;
});
});
また
<style>
.backgroundshift {
background-position: 70px 0;
}
</style>
$(document).ready(function () {
$("#" + <%= btnDealItem.ClientID %>).click(function() {
$(this).addClass("backgroundshift");
return false;
});
});
問題は、ボタンがクリックされた後にスタイルがサーバー側で定義されることです。単純化されたシナリオは次のようになります。
ボタンをクリックした直後に変更を行いたい場合は、java スクリプトを介してクライアント側スクリプトを使用します。