【发布时间】:2017-10-19 00:50:02
【问题描述】:
在 IE 11 中调用函数时出现一些错误。在我的情况下,我在一个 <script> 标记内有两个脚本。
这是我的功能:
<script>
function test()
{
alert("oke");
var currency = $('#curr_drop').val();
var total_room_qty = calculate_amount(currency); // total all room
var btn_class = $('#book_button').prop('class');
var this_qty = $(this).val();
var this_plan_type = $(this).data('plan-type');
var this_plan_id = $(this).data('plan-id');
var this_plan_day = $(this).data('plan-day');
}
function calculate_amount(currency = 'IDR')
{
//alert("ok");
var nights = $('[name="nights"]').val();
var total_amount = 0; var total_room_qty = 0; var total_qty_room_id = 0;
console.log('nights: '+nights);
return total_room_qty;
}
</script>
我从这段代码中调用 test 函数:
<select name="qty" class="mb10" onchange="test.bind(this)()" data-plan-type="rate" data-plan-id="38" data-plan-day="52459">
<option value="0">0 rooms</option>
<option value="1">1 rooms</option>
<option value="2">2 rooms</option>
<option value="3">3 rooms</option>
<option value="4">4 rooms</option>
<option value="5">5 rooms</option>
</select>
我的问题是,当我尝试在函数 test 顶部显示 alert 时,我得到了 undefined function test,但如果我关闭 var total_room_qty = calculate_amount(currency); // total all room,则警报可以在 IE 11 浏览器中显示。它是怎么发生的,我该如何解决这个问题?谢谢
【问题讨论】:
-
select in page后面是script标签吗?
-
@MehdiDehghani 我在关闭
body标签之前将该脚本放在页面底部 -
那就是问题所在,换个顺序就行了
-
@PatrickHund 你是什么意思改变订单?你能给我解释一下吗?
-
首先是脚本标签,然后是选择元素。抱歉,我在打电话,没时间写正确的答案
标签: javascript jquery function internet-explorer-11