尝试在加载后立即使用javascript检查按钮中的值
我正在尝试使用javascript onload函数检查按钮中的值,在获取我正在执行检查的按钮的值时,如果检查为真,则让它使用其id禁用预览按钮。这是javascript代码段尝试在加载后立即使用javascript检查按钮中的值,javascript,jquery,html,Javascript,Jquery,Html,我正在尝试使用javascript onload函数检查按钮中的值,在获取我正在执行检查的按钮的值时,如果检查为真,则让它使用其id禁用预览按钮。这是javascript代码段 window.onload = function() { //var text = $(".badge").text(); var totalCheck = document.getElementById('totalcheck').value; alert("before check");
window.onload = function() {
//var text = $(".badge").text();
var totalCheck = document.getElementById('totalcheck').value;
alert("before check");
if(totalCheck == "0.0"){
alert(totalCheck);
$('#disbtn').on('click',function() {
$(this).prop("disabled",true);
});
}
}
这是我正在检查的按钮,窗口立即加载
<button id="totalcheck" class="btn btn-default" type="button">
Total <span id="price" class="badge">0.00</span>
</button>
总计0.00
如果检查为真,这就是我试图禁用的按钮
<button id="disbtn" class="one btn btn-primary" type="button">
<i class="fa fa-caret-down" aria-hidden="true"></i>
Preview </button>
预览
有趣的是,即使在检查之前,警报也不会弹出。请问不工作的原因是什么?
匹配,则调用错误的元素
0.00
不是按钮值。它的span
text.so按钮
值为null
,因此如果
0.00
,但您正在匹配0.0
,因此它始终为falsevar totalCheck=document.getElementById('price').innerHTML代码>
函数开始(){
//var text=$(“.badge”).text();
var totalCheck=document.getElementById('price').innerHTML;
警报(“检查前”+总检查);
如果(totalCheck.trim()=“0.00”){
警报(总检查);
$('disbtn')。在('click',function()上{
$(this.prop(“disabled”,true);
});
}
}
总计0.00
预览
您必须使用“价格”而不是“总支票”来获取您的总支票
var totalCheck = document.getElementById('price').innerHTML;
总值包含在ID为“price”的范围内。
使用innerHTML代替value,因为span不支持属性值
var totalCheck = document.getElementById('price').innerHTML;
如果在If
之前没有警报,则表示您没有正确注册onload处理程序。@parker查看我的更新答案。。哪个警报未显示。第一个警报还是第二个警报?您正在使用哪个浏览器?此外,未禁用“加载预览”。如果对任何值进行了全部更改,请启用它。我认为这是一个加载问题。请尝试使用我更新的答案。我在body