Javascript 就绪方法
我的Javascript 就绪方法,javascript,jquery,document-ready,Javascript,Jquery,Document Ready,我的.ready()方法没有调用它应该调用的函数。该函数本身运行良好,但当我尝试在页面加载后第一件事执行它时,它什么也不做。我浏览了现有的主题,但找不到解决它的方法 我应该补充一点,我希望我的函数在页面加载后以及单击按钮后执行(该部分目前可以工作) 我的代码: <script> $(document).ready(function() { calculation(); }); function calculation() { variable = new XMLHt
.ready()
方法没有调用它应该调用的函数。该函数本身运行良好,但当我尝试在页面加载后第一件事执行它时,它什么也不做。我浏览了现有的主题,但找不到解决它的方法
我应该补充一点,我希望我的函数在页面加载后以及单击按钮后执行(该部分目前可以工作)
我的代码:
<script>
$(document).ready(function() {
calculation();
});
function calculation() {
variable = new XMLHttpRequest();
var total = 0;
if($('#p1').val() && $('#qty').val()){
var price = $('#p1').val();
var qty = $('#qty').val();
total += price * qty;
}
$('#total').val(total);
}
</script>
$(文档).ready(函数(){
计算();
});
函数计算(){
变量=新的XMLHttpRequest();
var合计=0;
如果($('p1').val()&&('qty').val()){
var价格=$('#p1').val();
变量数量=$('#数量').val();
合计+=价格*数量;
}
$('总计').val(总计);
}
发生错误是因为您正在使用就绪功能
以下是导致问题的一些代码:
if($('#p1').val() && $('#qty').val()){
var price = $('#p1').val();
var qty = $('#qty').val();
total += price * qty;
}
$('#total').val(total);
您正在尝试获取一些HTML元素数据…但是猜猜看是什么?您的HTML尚未加载
您想使用onLoad事件
以下是就绪/加载之间的区别:
您需要在脚本运行之前加载jQuery
<!-- Put jQuery Here -->
<script>
$(document).ready(function() {
calculation();
});
//etc...
</script>
$(文档).ready(函数(){
计算();
});
//等等。。。
代码以前工作的原因是,您在一个由按钮触发的函数中使用jQuery。在浏览器加载jQuery之后,单击按钮之前,该代码永远不会运行。您是否看到任何控制台日志错误?是否有更完整的示例?适合我。您是在代码片段之前还是之后加载jQuery?您需要在加载之前加载它才能正常工作。您进行了哪些故障排除?控制台中显示了哪些错误?相关的HTML在哪里?为什么你认为这个功能不起作用?应该发生什么和正在发生什么?在这段代码之前或之后,您在哪里包含了jQuery?问题在于,这就是问题所在,我在代码之后加载了jQuety,感谢IDK为什么在没有反驳的情况下否决了这一点……因为您的基本断言是完全错误的。触发DOM就绪事件时,HTML标记确实完全存在。