如何在windows加载时触发事件



我喜欢在windows加载上执行$('select[name="order_id"]').change(),但不执行任何

如果我调试这是浏览器控制台,我可以看到脚本正在执行$('select[name="order_id"]').change(),但没有发生任何不发送ajax请求的事情

如果我在浏览器控制台$('select[name="order_id"]').change()中手动更改选择或粘贴,一切正常

有什么办法解决的吗?我也试过使用.trigger('change'),但问题是

window.addEventListener("load", function (e) {

<?php if ($logged): ?>

$('select[name="order_id"]').change()

$('select[name="order_id"]').change(function(){
var order_id = $(this).val();
isSelectedOrder = true
$.ajax({
url: 'index.php?route=return/getProductsByOrderId',
data: {order_id:order_id},
dataType: 'json',
type: 'POST',
beforeSend: function(){
.......
.....
..
.
<?php endif; ?> 

}) 

您的问题是在附加事件之前触发change(),您所需要做的就是将change()的触发器移动到附加事件之后。

window.addEventListener("load", function (e) {
<? php if ($logged): ?>

$('select[name="order_id"]').on('change', function () {
var order_id = $(this).val();
isSelectedOrder = true
$.ajax({
url: 'index.php?route=return/getProductsByOrderId',
data: { order_id: order_id },
dataType: 'json',
type: 'POST',
beforeSend: function () {
.......
},
});
});
$('select[name="order_id"]').change()
<? php endif; ?> 
});

您可以使用此代码块

$( document ).ready(function() {
console.log( "ready!" );
});

参考:https://learn.jquery.com/using-jquery-core/document-ready/

最新更新