0

如果这太简单并且已经讨论过多次,我深表歉意。我不是 Javascript/JQuery 开发人员,我不知道我应该使用哪些搜索词:-(

问题是:我必须在工作中编辑一个 html 页面。有一个显示一些内容的 div。如果单击按钮,则 div 中的内容应更改为另一个 html 页面。

小例子:

<form class="ReportController" name="DateRange" action="report" method="post" >
    <input type="checkbox" name="kategorie[]" />All
    <input type="checkbox" name="kategorie[]" value="Category1"/>
    <input type="submit" name="submit" value="Recalc" />
</form >
<div id="report" >
    < !-- some content -- >
</div >

每当我更改顶部的过滤器时,我都希望新数据显示在报告 div 中。新数据已经存在于不同的 html 文件中。因此,如果有人选择“全部”,它应该在报告 div 中打开(例如)all.html。

谢谢!亚历克斯

4

2 回答 2

1

你可以在这里使用.load函数。

例如:假设您要加载all.html文件:

$( "#report" ).load( "all.html" );

欲了解更多信息:http ://api.jquery.com/load/

于 2013-11-06T08:09:34.227 回答
0

我假设这些文件存储在您的服务器上。所以你可以做的是向你的服务器发送一个 Ajax 请求(idk 你使用什么服务器端编程语言,这就是为什么我不能在这里给出进一步的说明)。在 asp.NET fe 中,您可以使用 WebMethod 或 HttpHandler 来处理此请求,在 ruby​​ on rails 中,路由文件会将此请求路由到特定的控制器操作。在服务器端代码中,您将读取传递的参数(此处为“选定”),打开相应的文件,将其读入字符串并将字符串写入响应中。

该请求可能如下所示:

$.ajax({
    url: "adress/route/httphandler/etc.",
    data: {"selected":$("#selectionBox").value()},
    method: "get",
    success: function(data){
        $("#report").html(data);
    }
});

编辑:好吧,算了吧,似乎 .load() 函数就是这样做的。:D

于 2013-11-06T08:13:22.547 回答