簡體   English   中英

如何從jsp頁面訪問java腳本中使用的變量?

[英]How to access a variable used in java script from jsp page?

我在我的網頁中使用ajax。我想通過jsp頁面訪問java腳本函數中使用的變量(在html的head部分中).Jsp頁面使用該變量從數據庫中檢索數據。

我怎樣才能做到這一點?

請幫我。

如果您需要調用數據,您將設置&或者具有空前的var。 我意識到ajax本地化甚至宣布新的var是我發現的最好的方法是附加到現有的。 現在使用新的字符串和/或文字數組/對象

 <script>
     function s(e){
      alert(e);
     }

      var a = '';

    //Jquery Version
     $.get('test.php',function(data){
       a += data;
      s(a);
      });

    // Javascript Version
      function ajaxFunction(){
        var ajaxRequest;  // The variable that makes Ajax possible!

        try{
            // Opera 8.0+, Firefox, Safari
            ajaxRequest = new XMLHttpRequest();
        } catch (e){
            // Internet Explorer Browsers
            try{
                ajaxRequest = new ActiveXObject("Msxml2.XMLHTTP");
            } catch (e) {
                try{
                    ajaxRequest = new ActiveXObject("Microsoft.XMLHTTP");
                } catch (e){
                    // Something went wrong
                    alert("Your browser broke!");
                    return false;
                }
            }
        }
        // Create a function that will receive data sent from the server
        ajaxRequest.onreadystatechange = function(){
            if(ajaxRequest.readyState == 4){

                a += ajaxRequest.responseText;
                s(a);
            }
        }

        ajaxRequest.open("GET", "test.php" , true);
        ajaxRequest.send(null); 
    }

    $(function(){
    ajaxFunction();
    });
    //-->
    </script>

你可以通過添加新的jsp文件來實現,flow將是這樣的:

  1. 創建新的jsp文件,如databaseOperation.jsp,它將包含用於檢索數據庫記錄的代碼。
  2. 通過javascript函數,調用databaseOperation.jsp文件並傳遞你的javascript varible。

  3. 在jsp文件中訪問此變量並從DB檢索所需的代碼。

您可以通過進行ajax調用並使用ajax請求傳遞該變量來執行此操作

<script>
var id=1;

$.get("yourpage?id="+id,function(){

//get this id serverside using `get` 
})

</script>

你必須改變你的方法才能完成這項工作。 我們不能將javascript變量值設置為jsp文件中寫入的數據庫代碼。 這是因為,數據庫代碼將從服務器端呈現,只有html將被發送到客戶端。

您可以通過使用具有異步支持的此數據庫代碼的Controller(Servlet)來實現此目的,並在您的jsp文件中,通過javascript ajax調用此控制器並根據您的要求操作HTML DOM。

暫無
暫無

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

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