जहां तक PHP का संबंध है (या वास्तव में, सामान्य रूप से एक वेब सर्वर), एक HTML पृष्ठ एक बड़ी स्ट्रिंग से अधिक जटिल नहीं है।
सभी फैंसी काम जो आप PHP जैसी भाषा के साथ कर सकते हैं - डेटाबेस और वेब सेवाओं से पढ़ना और वह सब - अंतिम अंतिम लक्ष्य एक ही मूल सिद्धांत है: HTML का एक स्ट्रिंग उत्पन्न करें *।
जब तक यह वेब ब्राउज़र द्वारा लोड नहीं किया जाता है, तब तक आपका बड़ा HTML स्ट्रिंग इससे अधिक विशेष नहीं हो सकता है। एक बार जब कोई ब्राउज़र पृष्ठ को लोड करता है, तो अन्य सभी जादू होते हैं - लेआउट, बॉक्स मॉडल सामान, डोम पीढ़ी, और जावास्क्रिप्ट निष्पादन सहित कई अन्य चीजें।
तो, आप "PHP से जावास्क्रिप्ट को कॉल न करें", आप "अपने आउटपुट में जावास्क्रिप्ट फ़ंक्शन कॉल शामिल करें"।
ऐसा करने के कई तरीके हैं, लेकिन यहां एक युगल हैं।
सिर्फ PHP का उपयोग करना:
echo '<script type="text/javascript">',
'jsfunction();',
'</script>'
;
Php मोड से डायरेक्ट आउटपुट मोड में पहुंचना:
<?php
// some php stuff
?>
<script type="text/javascript">
jsFunction();
</script>
आपको एक फ़ंक्शन नाम या ऐसा कुछ भी वापस करने की आवश्यकता नहीं है। सबसे पहले, AJAX अनुरोधों को हाथ से लिखना बंद करें। आप केवल इसे खुद पर कठिन बना रहे हैं। वहाँ बाहर jQuery या अन्य उत्कृष्ट रूपरेखाओं में से एक प्राप्त करें।
दूसरी बात, समझ लें कि AJAX कॉल से प्रतिक्रिया मिलने के बाद आप पहले से ही जावास्क्रिप्ट कोड निष्पादित कर रहे हैं।
यहाँ एक उदाहरण है जो मुझे लगता है कि आप jQuery के AJAX के साथ कर रहे हैं
$.get(
'wait.php',
{},
function(returnedData) {
document.getElementById("txt").innerHTML = returnedData;
// Ok, here's where you can call another function
someOtherFunctionYouWantToCall();
// But unless you really need to, you don't have to
// We're already in the middle of a function execution
// right here, so you might as well put your code here
},
'text'
);
function someOtherFunctionYouWantToCall() {
// stuff
}
अब, यदि आप PHP से AJAX कॉल पर एक फ़ंक्शन नाम भेजने पर मृत हैं, तो आप वह भी कर सकते हैं।
$.get(
'wait.php',
{},
function(returnedData) {
// Assumes returnedData has a javascript function name
window[returnedData]();
},
'text'
);
* या JSON या XML आदि।