danjapro Posted February 20, 2013 Share Posted February 20, 2013 I am using php, and need to load() this , template content php file into the jquery and pass it to a #div ID to render front-end view. I am not sure how to load the php file in jquery and then pass it as a variable called repeater which helps build out all the rows combining the template loaded with Ajax (obj) query results. In the set alert, it pops up as [object Object], no template. When I write the entire php template content out into jquery as var repeater, it works, but I do not want all that html in jquery. Just load() then read. Here is the code if this makes any sense $('#pageContent').load('../includes/OrderLookup.php #pageContent'); alert ($('#pageContent').load('OrderLookup.html #pageContent')); var url = $('#pageContent').load('../includes/OrderLookup.php'); var page = '<div id="pageContent"></div>'; var repeater = $('#pageContent').load('OrderLookup.html #pageContent'); var pageBuildUp=''; for (x in dataArray){ pageBuildUp += obj.repeater; //alert(obj.repeater); //pageBuildUp += url; pageBuildUp = pageBuildUp.replace('##transactionId##',makeTextSmall(dataArray[x]['blockvalue'],20)); if (dataArray[x]['description']==''){ pageBuildUp = pageBuildUp.replace('##orderTotal##','no total amount'); } Quote Link to comment https://forums.phpfreaks.com/topic/274733-how-to-load-template-file-in-jquery-pass-to-div-or-alert/ Share on other sites More sharing options...
codefossa Posted February 20, 2013 Share Posted February 20, 2013 You should use $.get() if you want to play around with the returned data. You could also $.load() into a DIV though, and read the HTML. Quote Link to comment https://forums.phpfreaks.com/topic/274733-how-to-load-template-file-in-jquery-pass-to-div-or-alert/#findComment-1413679 Share on other sites More sharing options...
danjapro Posted February 20, 2013 Author Share Posted February 20, 2013 I am using load(): See code string var repeater = $('#pageContent').load('OrderLookup.html #pageContent'); Quote Link to comment https://forums.phpfreaks.com/topic/274733-how-to-load-template-file-in-jquery-pass-to-div-or-alert/#findComment-1413714 Share on other sites More sharing options...
codefossa Posted February 21, 2013 Share Posted February 21, 2013 $("#pageContent").load("OrderLookup.html"); alert($("#pageContent").html()); $.get("OrderLookup.html", function(data) { alert(data); }); Quote Link to comment https://forums.phpfreaks.com/topic/274733-how-to-load-template-file-in-jquery-pass-to-div-or-alert/#findComment-1413784 Share on other sites More sharing options...
danjapro Posted February 21, 2013 Author Share Posted February 21, 2013 (edited) I changed my code some. Using function(dataRow), I can gather the Temlate file. But problem now is the function cannot be inside of the Main function and work properly. How to wrap that function with my current loop pagebuildup function? $.post("ajax/search_full_block.php",{query:searchQuery,limit:limiter,accountID:accountID,blocktype:block_type,emailID:emailID},function(dataReturn){ var obj = jQuery.parseJSON(dataReturn); alert('---success---'); if (obj.Ack=="success"){ $('#resultsset').html(''); var dataArray = obj.data; var totalCount = obj.total_count; var optionsBloc=''; var repeater = $('#pageContent').load('includes/OrderLookup.php'); alert($("#pageContent").html(repeater)); var page = '<div id="pageContent"></div>'; $('#pageContent').load("includes/OrderLookup.php", function(dataRow) { alert("Data Loaded: " + dataRow); var repeater = dataRow; }); var pageBuildUp=''; for (x in dataArray){ pageBuildUp += obj.repeater; pageBuildUp = pageBuildUp.replace('##transactionId##',makeTextSmall(dataArray[x]['blockvalue'],20)); if (dataArray[x]['description']==''){ pageBuildUp = pageBuildUp.replace('##orderTotal##','no total amount'); } Edited February 21, 2013 by danjapro Quote Link to comment https://forums.phpfreaks.com/topic/274733-how-to-load-template-file-in-jquery-pass-to-div-or-alert/#findComment-1413952 Share on other sites More sharing options...
danjapro Posted February 22, 2013 Author Share Posted February 22, 2013 I am trying to get the template to load into a div or just to display the contents of that template file: var repeater = $('#pageContent').load('includes/OrderLookup.php'); that does not seem to work when I set it as a var however, this is the template written into the jquery and it works well. But I do not want to load the template in the jQuery: var repeater = '<div class="ub-quick-results-box" id="OrderLookupResults" onclick="showEditBlock(##Orderid##);" style="border-top-left-radius: 5px; border-top-right-radius: 5px; border-bottom-left-radius: 5px; border-bottom-right-radius: 5px; background-color: rgb(250, 250, 250); "><div class="repeater_blockname" id="transactionId" style="font-size:12px; font-family:arial; color:#787878;border-right:solid 1px #ebebeb; width: 220px; display: inline-block; padding-left: 35px; height: 20px; padding-top: 0px; cursor: pointer; "> <a href="#" onclick="showinfobox(##transactionId##);">##transactionId## </a> </div><div class="repeater_blockname" id="orderDate" style="font-size:12px; font-family:arial; color:#787878;border-right:solid 1px #ebebeb; width: 120px; display: inline-block; padding-left: 35px; height: 20px; padding-top: 0px; "> ##orderDate## </div><div class="repeater_blockname" id="orderTotal" style="font-size:12px; font-family:arial; color:#787878;border-right:solid 1px #ebebeb; width: 220px; display: inline-block; padding-left: 45px; height: 20px; padding-top: 0px; font-weight: bold; "> <span>##orderTotal## </span> </div><div class="repeater_blockname" onclick="actdeBlock(##Orderid##)" id="status" style="font-size:14px; font-family:arial; color:###colour##;border-right:solid 0px #ebebeb; width: 120px; display: inline-block; padding-left: 20px; padding-top: 0px; " > <span id="ub_block_status_display_##Orderid##" style="color:###colour##">##status##</span> </div><input type="hidden" id="ub_hidden_status_##Orderid##" value="##status_val##"/></div>'; How to load(), to return just the empty template into var and pass it to my pagebuildup. Quote Link to comment https://forums.phpfreaks.com/topic/274733-how-to-load-template-file-in-jquery-pass-to-div-or-alert/#findComment-1414214 Share on other sites More sharing options...
codefossa Posted February 23, 2013 Share Posted February 23, 2013 You don't set it as a var. If you want to manage the returned data, just use $.get() like I showed above. Otherwise, why would you even be attempting that? If you really must use $.load() then make repeater the html of that div. var repeater = $("#pageContent").html(); Quote Link to comment https://forums.phpfreaks.com/topic/274733-how-to-load-template-file-in-jquery-pass-to-div-or-alert/#findComment-1414356 Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.