在返回ajax值时隐藏按钮
hide button on return of ajax value
是通过ajax对其单击执行特定任务的按钮。通过ajax,我得到一个json格式的结果,在console
中如下所示 ["25", 16, "ABC", "DEF", 1]
现在我想,每当有1
在第4个位置,我希望隐藏几个按钮。我写的代码是
$.ajax({
type: 'post',
url: 'script.php',
dataType: 'json',
data: {
txt: txtbox,
hidden: hiddenTxt
},
cache: false,
success: function(returndata) {
if(returndata[4]=='1')
{
$("#first").hide();
$("#second").hide();
$("#third").hide();
}
},
error: function() {
console.error('Failed to process ajax !');
}
});
if条件似乎起作用,因为我试图在if条件内放置一个警告框,它起作用了,但是按钮仍然显示。
我尝试使用警报框进行测试的代码是
if (returndata[4] == 1)
{
alert("1");
}
谁能告诉我为什么会这样
我知道这就是你所做的。我在挑战解决你的问题。让我们一个接一个地做。第一次尝试,用下面的代码代替你的代码:
$.post("script.php", {txt: txtbox, hidden: hiddenTxt}, function (res) {
alert("Response: " + res);
alert("Type: " + typeof res);
});
请在评论中告诉我你的结果。欢呼。
您在隐藏部分匹配了一个'1'作为string
,但在警报部分匹配了一个1作为number
。这可能是问题所在。
避免这种
if(returndata[4]=='1')
使用
if(returndata[4] == 1)
尝试遵循ajax方法的更改…
- 使用GET方法代替POST
-
不需要使用dataType:'json'
$.ajax({ type: 'GET', url: 'script.php', data: { txt: txtbox, hidden: hiddenTxt }, cache: false, success: function(returndata) { if(returndata[4]=='1') { $("#first").hide(); $("#second").hide(); $("#third").hide(); } }, error: function() { console.error('Failed to process ajax !'); } });
的问候但是过犹不及
在评论中我看到你已经发布了ajax结果,这是:
["25", 16, "ABC", "DEF", 1]
你的问题是比较,这是==="1"(当我开始写这个答案时,我看到了这种类型的比较),你有1作为数字,而不是"1"作为字符串,===意味着类型比较,所以以正确的方式它给出了假,因为1是数字,"1"是字符串。您可以通过将condition更改为:
来修复此问题。returndata[4]===1
或不带类型检查:
returndata[4]==1
。
为了更好地理解这个答案,我准备了几个例子。
console.log("1 === '1'");
console.log(1==='1');
console.log("1 === 1");
console.log(1===1);
console.log("1 == '1' ( no type comarision )");
console.log(1=='1');
相关文章:
- 剑道UI内联编辑:如何在点击其他按钮时隐藏按钮
- PHP Javascript显示/隐藏按钮不工作
- 如何隐藏按钮单击事件上的占位符
- 我的表单上的SpringWebFlow2中的每个转换都需要隐藏按钮吗
- 使用ng-hide根据条件显示/隐藏按钮
- 另一种显示和隐藏按钮的方式
- PHP If Else-隐藏按钮
- 如何显示/隐藏按钮
- jQuery 隐藏按钮,如果它们不包含文本
- 如何检测是否在主页上隐藏按钮
- 单击时隐藏按钮
- 在可丢弃的::javascript上显示隐藏按钮
- 想要使用onclick显示隐藏按钮
- 使用jQuery在ruby中显示/隐藏按钮
- 如果未输入URL,则隐藏按钮
- 当按下第二个按钮时如何隐藏按钮,以及当我点击页面的空白区域时如何使其出现
- 如何使用onmouseover和onmouseout在鼠标经过按钮时隐藏和取消隐藏按钮
- 使用运行时创建的链接来触发ASP.Net中隐藏按钮的单击处理程序
- 如何在ajax响应中隐藏按钮
- 切换时隐藏按钮