关于“如何在Ajax加载内容后运行js”有两个以上的问题。他们都建议在Ajax加载完成后运行JS。我知道如何处理。
假设超过40个页面通过Ajax加载页面my-Page.php
。是否有任何JS函数如$(document).ready
来处理Ajax加载内容后运行脚本?
请注意,编辑40多个文件是不合理的。
关于我的问题的更多信息:
我正在定制sugar crm以使用jquery ui日期选择器而不是简单的JS日历。在Ajax调用中调用$('#inp').datepicker()
失败,因为没有$(#inp)
对象可用。
作品
Calendar.setup ({ldelim}
inputField : "{{$idname}}",
ifFormat : "{$CALENDAR_FORMAT}",
daFormat : "{$CALENDAR_FORMAT}",
button : "{{$idname}}_trigger",
singleClick : true,
dateStr : "{$date_value}",
step : 1,
weekNumbers:false {rdelim} );
doesn't work
jQuery(function() {ldelim}
jQuery('#{{$idname}}_hpm').datepicker({ldelim}
showOn: 'button',
buttonImage: 'include/jdp/styles/images/calendar.png',
buttonImageOnly: true,
changeMonth: true,
changeYear: true,
dateFormat: 'yy/mm/dd'
{rdelim});
{rdelim});
我想知道它的基本Calendar.setup()
是如何工作的,但是我的剧本。
答案 0 :(得分:1)
我也遇到过这个问题。该解决方案暗示here。
由于SugarCRM附带YUI库,您可以使用onContentReady
函数。
var yourFunction = function(){
console.log("Hello world! #myElementId is loaded!")
};
YAHOO.util.Event.onContentReady('myElementId',yourFunction);
答案 1 :(得分:0)
AJAX调用的“成功”部分将运行其中的任何函数:
$.ajax({ type : 'POST', url : 'example.org', dataType : 'json', data: { id:'33d', }, success : function(data){ //Add function here }, error : function(XMLHttpRequest, textStatus, errorThrown) { // Add error functions here }); return false; });
我不知道你是否正在寻找这个。