示例:
<button>Test 1</button>
<button>Test 2</button>
<button>Test 3</button>
这样的事情:
$('button').click(function(){
$.post('a.php',{text:$(this).text()},function(data){
if(data == 'doThis'){
$(this)...(??button??)...css('color','#ff0000');
}else{
$(this)...(??button??)...css('color','#00ffff');
}
});
});
所以,根据“a.php”的结果......按钮会有不同的东西。 我不知道数字操作按钮,这个想法是所有人的一个功能.. 你们人们会怎么做?
答案 0 :(得分:2)
尝试这样的事情(未经测试)
$('button').click(function(){
var btn = $(this);
$.post('a.php',{text:$(this).text()},function(data){
if(data == 'doThis'){
btn.css('color','#ff0000');
}else{
btn.css('color','#00ffff');
}
});
});
将按钮实例存储为btn
允许您在$ .post的anon函数内调用它,即使click事件在执行前多次执行,也保留引用.post可以返回有效。< / p>
答案 1 :(得分:1)
创建对this
的临时引用以保持关闭:
$('button').click(function(){
var self = this;
$.post('a.php',{text:$(self).text()},function(data){
$(self).css('color',(data == 'doThis') ? '#ff0000' : '#00ffff');
});
});
答案 2 :(得分:0)
只是要添加,另一个选项是使用$.ajax
,并将context
选项设置为this
,使点击的按钮成为成功回调的上下文:
$.ajax({
url: "a.php",
type: "post",
data: {text:$(this).text()},
context: this,
success: function(data) {
if(data == 'doThis'){
$(this).css('color','#ff0000');
}else{
$(this).css('color','#00ffff');
}
}
});