簡體   English   中英

Polymer 1.0 Iron-Ajax

[英]Polymer 1.0 Iron-Ajax

我試圖通過在Polymer 0.5中工作的PHP腳本獲取數據。 我只是得到null響應並且在Polymer 1.0中沒有錯誤,下面是代碼。 我已經嘗試修改PHP以回顯任何東西,但我得不到任何回應。 hresponse確實觸發,但此時只有請求信息在ajax中,響應信息為空。 我找不到一個例子來看我出錯的地方。 謝謝

<iron-ajax
        id="ajax"
        url=""
        params=""
        handle-as="json"
        on-response="hresponse"
        debounce-duration="300">
</iron-ajax>

and the script

setajax:  function(){
   this.$.ajax.url = "Scripts/getnotes.php";
   this.$.ajax.params='{"SN":"VBA056"}';
   this.$.ajax.generateRequest();
}

hresponse: function(e) {
      console.log(e.detail.response);
      console.log(this.$.ajax.lastResponse);
}

當您在腳本中添加this.$.ajax.params= ,它應該是一個對象。 當您查看生成請求的iron-ajax.html中的位置時,您將看到為什么會出現這種情況。 您當前正在將其添加為String。 嘗試將行設置this.$.ajax.params={"SN":"VBA056"}它應該可以工作。

以下示例有效(假設您要導入所有必需的元素):

<body>
<my-app></my-app>
<dom-module id="my-app">
<style>
</style>
<template>

  <iron-ajax
      id="ajax"
      url=""
      handle-as="json"
      on-response="hresponse"
      debounce-duration="300">
  </iron-ajax>

  <button on-click="setajax">Click me</button>

</template>
<script>
Polymer({
  is: "my-app",
  setajax: function () {
    this.$.ajax.url = "http://jsonplaceholder.typicode.com/posts";
    this.$.ajax.params = {"userId":"1"};
    this.$.ajax.generateRequest();
  },
  hresponse: function(request) {
    console.log(request.detail.response);
    console.log(this.$.ajax.lastResponse);
  }
});
</script>
</dom-module>
</body>

我的第一次回答和編程的新手,所以這不完全正確。 但它可以幫助你

根據https://elements.polymer-project.org/elements/iron-ajax提供的文檔,沒有作為on-response屬性

你的iron-ajax必須修改,我也是一個新手,所以我想知道它是否有效,但值得一試。

<iron-ajax
        auto
        url=""
        params=""
        handleAs="json"
        lastResponse="hresponse"
        method='GET'>
</iron-ajax>

我也想知道你的腳本是否像那樣工作。

暫無
暫無

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

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