簡體   English   中英

使用jQuery解析HTML頁面

[英]Parsing html page by using jQuery

我必須從ajax響應(html)獲取值。 以下是我的ajax電話,

var result = $.ajax({
                //datatype : "application/json",
                type: "POST",
                url: ddcUrl,
                data: {Bin:cardNumber, JWT:encodedJWT},
                complete: function(event){
                    console.log(event);
                }
            });

以下是我的回復(HTML格式)

<!DOCTYPE html>
<html>
<head>
    <title>Cardinal DDC Sim</title>
</head>
<body>

<script>

    sendNotification(true, "28eb7c91-699c-4115-b25e-1ba2dc513e3e");

    function sendNotification(status, sessionId){
        try{
            var message = {
                MessageType: 'profile.completed',
                SessionId: sessionId,
                Status: status
            };
            window.parent.postMessage(JSON.stringify(message), '*');
        } catch(error){
            console.error('Failed to notify parent', error)
        }
    }
</script>
</body>
</html> 

我需要在javascript函數內部獲取值28eb7c91-699c-4115-b25e-1ba2dc513e3e

該請求應該發生在iframe中,因此,通過使用以下功能,響應(內部會話ID)將添加到window參數中,例如,

window.addEventListener("message", function(event) {  

       var data = JSON.parse(event.data);

       if (data !== undefined && data.Status) {
           // Extract the value of `SessionId` for onward processing.
       }

}, false);

但是由於其他一些問題,我正在使用ajax發送請求。

由於在javascript函數內部定義的值,因此我無法獲取該會話ID參數。 28eb7c91-699c-4115-b25e-1ba2dc513e3e。 有什么解決辦法嗎?

基本的正則表達式應該能夠匹配文本中的模式。

$.ajax({
  type: "POST",
  url: ddcUrl,
  data: {Bin:cardNumber, JWT:encodedJWT},
  dataType: "text",
})
.done(function( data ) {
   var code = data.match(/sendNotification\(true, "([a-f0-9\-]+)"\)/)
   console.log(code);
});

暫無
暫無

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

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