簡體   English   中英

PHP-調用ASP.Net MVC操作

[英]PHP - call ASP.Net MVC action

我對PHP一無所知,要求我從PHP調用ASP.Net MVC頁面以集成到PHP頁面。

我以為使用ajax調用會工作並且更易於實現。 但這似乎行不通。

我的代碼:

<div class="pageContainer">    
    <?php   
        echo 'start debugging';

        $param1=$_GET['param1'];
        $param2=$_GET['param2'];
        $htmlPage = '';

        $parameters = {
            myParam1: $param1,
            myParam2: $param2
        };

        try {
            $.ajax({
                type: 'POST',
                url: 'http://localhost:8080/MyController/MyAction',
                data: $parameters,
                contentType: 'application/json; charset=utf-8',
                dataType: 'json',
                processdata: true,
                success: function(result){
                    try {
                        $htmlPage = result->HtmlReturned;
                    }
                    catch (er) {
                        alert('Error');
                        return false;
                    }               
                },
                async: true,
                crossDomain: false,
                error: function(er){ alert('Error'); }
            });
        } catch (e) {
            echo 'catch';
            alert('Error');
        }

        echo $htmlPage;
    ?>          
</div>

怎么了? 我無法使用AJAX通話嗎? 我沒有任何錯誤,甚至無法調試,所以我不知道出了什么問題。 我的頁面完全是空的,沒有標題,沒有任何內容。

PHP項目不是我的,因此我不能包含任何擴展名或類似的內容。

就像@RiggsFoly所說,目前我的ajax調用沒有被解釋為javascript。 因此,我將代碼轉換為完全JS代碼,並將其包裝在<script>標記中。

我不知道如何在JS中訪問$_GET['param1']$_GET['param2'] param1param2變量。

因此,現在我的代碼更加清晰和有效:

<script type="text/javascript">
    $(document).ready(function()
    {           
        var parameters = {
            myParam1: param1,
            myParam2: param2
        };

        try {
            $.ajax({
                type: 'POST',
                url: 'http://localhost:8080/MyController/MyAction',
                data: parameters,
                contentType: 'application/json; charset=utf-8',
                dataType: 'json',
                processdata: true,
                success: function(result){
                    try {
                        $(".pageContainer").html(result.HtmlReturned);
                    }
                    catch (er) {
                        alert('Error');
                    }               
                },
                async: true,
                crossDomain: false,
                error: function(er){ alert('Error'); }
            });
        } catch (e) {
            alert('Error');
        }
    });
</script>

<div class="pageContainer">        
</div>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM