HTMLページに6つのjquery uiスピナーがあります。スピナーボタン(上または下)をクリックして最初のスピナーの値を変更しているときに画像を非表示にしたい。
最初のスピナーの値がキーボードで変更されると画像が非表示になりますが、スピナーボタンで変更すると画像は非表示になりません。
これはスピナーになる入力テキストです
<input type="text" class="save_check controller_performance" id="txtCtrlr" name="txtCtrlr" value="0" style="width: 50px; border-style: none;" />
スピナーになった時の構造です(firebugより転載)
<div class="ui-spinner">
<input type="text" style="width: 50px; border-style: none;" value="0" name="txtCtrlr" id="txtCtrlr" class="save_check controller_performance ui-spinner-box" autocomplete="off">
<button type="button" class="ui-spinner-up">▲</button><button type="button" class="ui-spinner-down">▼</button></div>
そして、私がコードを書いているスピナーボタン
$(".ui-spinner-up").click(function (){
console.log("in click function");
var parentClass = $(this).parent().attr("class");
$(this).siblings(".controller_performance").change(hideControllerPerformanceInfo);
console.log("class is " + parentClass);
$(parentClass).siblings(".controller_performance").change(function(){
console.log("changing siblings");
});
var id = $('.'+ parentClass+ ':input').attr('id');
console.log("id is --> " + id);
if($(this).attr("id") == "txtCtrlr") {
// hideControllerPerformanceInfo();
$(".ui-spinner-box").bind("propertychange keyup input paste", hideControllerPerformanceInfo );
}
});
最初のスピナーを一意に識別して hide 関数を呼び出す別の方法はありますか? クラスに基づいてセレクターとしてjqueryコードを書くことはできません。それはすべてのスピナーに適用されます。