0

我正在尝试使用 ajax 从外部域获取变量,然后使用数据创建预填充的表单字段,但我似乎无法让它工作。

我对 JavaScript 有点陌生,它可能有点愚蠢,但我就是不知道为什么它不起作用。

 <html>
<head>
<script type="text/javascript">
    function xss_ajax(url) {
        var script_id = null;
        var script = document.createElement('script');
        script.setAttribute('type', 'text/javascript');
        script.setAttribute('src', url);
        script.setAttribute('id', 'script_id');

        script_id = document.getElementById('script_id');
        if(script_id){
            document.getElementsByTagName('head')[0].removeChild(script_id);
        }

        // Insert <script> into DOM
        document.getElementsByTagName('head')[0].appendChild(script);
    }

    function callback(data) {

    var counter = 1;
    var limit = 3;
    var txt = '';

    for(var key in data) {

          var newdiv = document.createElement('div');
          newdiv.innerHTML = "Entry " + (counter + 1) + " <br><input type='text' name='myInputs[]' value=" + data[key] +">";
          document.getElementById(divName).appendChild(newdiv);
          counter++;
;
        }
    }

    var url = "http://myserver.com/test.php";

</script>
<title></title>
</head>
<body>
<button onclick="xss_ajax(url);">Get Data</button>
</body>
</html> 

外部域上的脚本。

callback({"firstname":"John", "lastname":"Smith", "email":"john.smith@johnsmith.com"});
4

1 回答 1

1

您需要研究 JSONP。使用库来处理请求也会成倍增加,检查 jQuery 或 Extjs。这是一篇博客文章,应该可以帮助您。

于 2012-04-25T13:23:19.217 回答