1

首先,我在 google doc 中找到了演示:

<html>
  <head>
    <title>JSON/Atom Custom Search API Example</title>
  </head>
  <body>
    <div id="content"></div>
    <script>
      function hndlr(response) {
          // handle result
      }
    </script>
    <script src="https://www.googleapis.com/customsearch/v1?key=KEY&cx=cx&q=cars&callback=hndlr">
    </script>
  </body>
</html>

它工作正常。

但是知道我想在 js 文件中触发“搜索过程”,比如 mySearch.js,那么我该如何完成呢?

例子:

var XXXLayer = cc.Layer.extend({
    init:function () {
        this._super();
        var theUrl = 'https://www.googleapis.com/customsearch/v1?key=KEY&cx=cx&q=cars&callback=hndlr';

        // what to do here ???????

        return true;
    },
    hndlr:function(response) {
          // handle result
    }
});

任何建议将不胜感激谢谢:)

4

2 回答 2

1

当您触发搜索过程时,您可以添加一个脚本元素。

function triggersearch(){
     var query=document.getElementById("query").value;
     var JSElement = document.createElement('script');
     JSElement.src = 'https://www.googleapis.com/customsearch/v1?key=KEY&cx=KEY&q='+query+'&callback=hndlr';
     document.getElementsByTagName('head')[0].appendChild(JSElement);
}
于 2013-07-02T12:58:55.757 回答
0

使用来自@RamK 的代码,执行以下操作:

索引.html:

<html>
  <head>
    <title>Example</title>
  </head>
  <body>
    <div id="query"></div>
    <script src="cs.js"></script>
  </body>
</html>

cs.js:

var key = "your api key";                // API KEY
var id = "your custom search engine id"; // CSE ID
var q = "cats";                          // QUERY


function hndlr(response) {
  console.log(response);                 // a way to see your results
}

function triggersearch(){
  var query=document.getElementById("query").value;
  var JSElement = document.createElement('script');
  JSElement.src = `https://www.googleapis.com/customsearch/v1?key=${key}&cx=${id}&q=${q}`+query+'&callback=hndlr';
  document.getElementsByTagName('head')[0].appendChild(JSElement);
}

triggersearch();
于 2018-10-24T14:25:08.473 回答