代码之家  ›  专栏  ›  技术社区  ›  Peter

引用<script>标记中的服务端代码

  •  0
  • Peter  · 技术社区  · 14 年前

    <script type="text/javascript" src="http://www.mydomain.com/getmarkers.php"></script> 
    

    现在我已经准备好将这个网站转换为一个ASP.NET MVC网站,我想知道什么是最好的方法来将它转换为更“正常”的东西。

    我可以考虑的选择是:

    1. .js文件的自定义HttpHandler
    2. 继续使用脚本标记,但使用到操作的自定义路由

    目前getmarkers.php所做的是生成javascript来向google地图添加标记。在脚本标记中引用php的好处是

    1. 它从不缓存,标记总是最新的 (我知道有其他选择)
    2. 它使我的html远离任何javascript
    3. 很容易为生成的标记添加/删除某些字段

    正在生成的内容的示例:

    infoWindows[0] = new google.maps.InfoWindow({
        content: '<div style="width:250px;color:#000;">...html content for this specific marker...</div>'
    });
    
    google.maps.event.addListener(markers[0], 'click', function() {
        infoWindows[0].open(map, markers[0]);
    });
    

    更改的是索引(本例中为0)和html的内容。


    一。你认为什么解决方案最合适
    2。通过调用服务器端“file”来引用脚本是否不好。

    1 回复  |  直到 14 年前
        1
  •  1
  •   Pekka    14 年前

    我看不出嵌入服务器生成的.js文件有什么坏处。我个人会选择“自定义路由”选项,所以很明显这是一个生成的文件,留下 .js 扩展到静态资源。

    但是,以纯数据格式(如JSON)提供标记,并使用Ajax加载标记,将具有以下优点:

    • 您可以将加载/HTML生成过程保存在一个地方、父页或其静态脚本之一,而不是控制HTML在服务器端脚本中的外观

    • 传输的数据量可能会减少