如何通过纸张按钮点击触发iron-ajax请求?

Seb*_*zny 2 html javascript ajax polymer

我想<iron-ajax>,以POST从动态数据<textarea>http://example.net当我点击一个<paper-button>元素:

function get_data() {
  return {content:document.getElementById("mycontent").html()}
}
Run Code Online (Sandbox Code Playgroud)
<html>
  <head>
    <!-- Imports-->
  </head>
  <body>
    <iron-ajax
      url="//example.net"
    ></iron-ajax>
    <paper-button id="mybutton"></paper-button>
    <textarea id="mycontent"></textarea>
  </body>
</html>
Run Code Online (Sandbox Code Playgroud)

如何组合iron-ajaxpaper-button元素将数据发送到服务器?

Sri*_*rik 7

您需要将聚合物元素包裹在将注册为聚合物元素的标签中.您可以dom-bind在您的情况下使用.

<template id="t" is="dom-bind">           
    <textarea value="{{dataToPost::input}}"></textarea>
    <paper-button on-tap="postData">Post Data</paper-button>
    <iron-ajax 
    id="dataAjax" 
    method="post"
    url="data/url"
    on-response="postComplete"></iron-ajax>
</template>  
Run Code Online (Sandbox Code Playgroud)

在脚本中需要调用generateReqeustiron-ajax元素.

(function (document) {
'use strict';
document.addEventListener('WebComponentsReady', function() {

    // We have to bind the template with the model
    var t = document.querySelector('#t');
    var ajaxRequest = t.$.dataAjax;

    // make the iron-ajax call
    t.postData = function() {
      ajaxRequest.body = {
        'text': t.dataToPost;
      } 
      ajaxRequest.generateRequest();
    }

    //callback on request complete
    t.postComplete = function(){
      alert('whoa! request complete');
    }
});
})(document);
Run Code Online (Sandbox Code Playgroud)

工作人员GET:http://plnkr.co/edit/13QJ7QFETIBg4bEiCMS7?p =preview