如何生成js文件,实现新闻的调用 各位大哥,我现在要做一个类似于帝国的新闻发布系统,要实现动态创建JS,在需要显示新闻的页面只要调用那段JS引用就可以了,这个该怎么做啊,我一点思路都没有,请大家帮帮忙。(我只有52分了,请大家原谅) 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 VSTS2008里面可以在服务器端动态加入js代码段的。 动态创建JS文件是应该可以解决的,关键是我这样的需求,JS文件该怎么写 可以这样:<script type="text/javascript" src="abc.aspx"></script>只要你的这个abc.aspx输出的是js内容就可以了然后你在这个abc.aspx里读取数据库,并生成document.write输出新闻的语句 其实就是通过.cs文件里面用C#生成文件,至于这个文件名和文件内容都可以定的,网上很多你可以找找看 回复:10楼的朋友我用了你的思路来实现,但是代码<script type="text/javascript" src="abc.aspx"> </script> 报脚本错误如果换成是JS文件的话就没有错误,上面的这个语句还有其他的写法吗 <script language="javascript" src="abc.aspx?classid=2"></script>你后台的这个ASPX页面要全部清空,不得有任何的其它HTML代码,否则就会出现错误。。假设调用代码为上代码,即调用第二类的新闻,当然参数可以多点,如加入条数等信息。。然后你要在ABC.aspx如下页面把页面中的HTML清空。。只留下。。<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default2.aspx.cs" Inherits="Default2" %>var list;list=<%=Getlist(5) %>;document.write(list);然后在其后台代码里面写入如下代码:protected void Page_Load(object sender, EventArgs e) { int id = int.Parse(Request.QueryString["id"]); if (!Page.IsPostBack) { Getlist(id); } } public string Getlist(int id) { string content = string.Empty; content += "<ul>"; for (int i = 0; i < id; i++) { content += "<li>"; content += "第一条新闻"; content += "</li>"; } content += "</ul>"; return content; }这里我没有操作数据库了,其实大致是如此,只不过把循环部分换成是根据传来的参数读取数据罢了。相信你应该是很容易看懂的恩。就是这样了。有什么问题及时回复。。 几个要点:1:JS文件里面全是JS代码。如果要输出HTML代码,用document.write输出。。 2.怎么样得到新闻的HTML代码(通过后台方法,调用数据库。) 3.定义一个公有方法,返回新闻列表的HTML代码。 4.在前台页面去掉其它的HTML代码,调用这个方法,然后把得到的字符串用JS的方法输出。 5.其它页面就调用这个JS就可以了,JS src中的参数是可以传达到后台的。。 楼主送分吧。哈哈。。50分有点少。。一人分一点喽祝元旦快乐!! 在后台用拼接js字符串 再用ClientScript.RegisterScript. 谢谢大家的热心回复。祝大家元旦快乐。回复:yanzhiyong你好,谢谢你的好思路,我用了你的代码,在我这里出现了一些小问题,不知道如何解决;页面可以浏览,但是浏览的结果是这样的:var list; list=第一条新闻第一条新闻第一条新闻第一条新闻第一条新闻; document.write(list); 我还想再问一下,在这个页面能放GRIDVIEW控件吗 我把abc.aspx页面下除了第一行代码外的所有HTML都清空了这行代码还是报错<script language="javascript" src="abc.aspx?classid=2"> </script> 如果是链接的JS文件则不报错 代码 我是经过调试的,应该不会有错的。不是要你浏览这个页面。 而是在abc.aspx外的另外一个页面中插入这行代码 思路就是这样的了,具体的就是JS的输出问题了。 <script language="javascript" src="abc.aspx?classid=2"> </script> 报错的原因,估计是你的2个文件编码不一致比如abc.aspx编码是utf-8,而引用文件是gb2312,改成一致的编码试试。另外,这个abc.aspx不能用gridview,因为它生成的是html,不是js你可以用Repeater代替至于哪些控件可以用,哪些控件不能用,你可以自己测试,比如放入控件后,直接访问abc.aspx页面,看看生成的html是否js格式,不是,就不行。 你好,我是这样做的,建了2个页面,一个是default.aspx,另一个是abc.aspxabc.aspx是按照你的代码,把HTML端清空,只留你写出来的代码,CS端也是按照你的写法的default.aspx的HTML端加入<script language="javascript" src="abc.aspx?id=2"> </script>但是在浏览default.aspx页面的时候还是报脚本错误,不知道是我哪里做错了还要麻烦你,不好意思了 终于可以了,谢谢大家的热心回复我在ABC.ASPX页面里是这样做的<%@ Page Language="C#" AutoEventWireup="true" CodeFile="abc.aspx.cs" Inherits="abc" %> var list;list='<%=Getlist(5) %>';document.write(list);加了单引号就可以了祝大家元旦快乐 图片上传控件 关于NeatUpload多文件上传的问题 很棘手! 关于label换行的问题 mvc开发模式,如何在调用其他方法时直接跳转. 页面生成Excel,图片如何保存? 怎么把模板列的宽度设置为0 (不用visable = false) 连接数据库时出错??? 请DXs指点一哈网页编码问题? TreeView怎么在读取页面时默认选中子节点? 谁给出一个datagrid的例子 TClientDataSet Delphi7下数据过滤问题 SqlConnection 释放的问题
<script type="text/javascript" src="abc.aspx"></script>只要你的这个abc.aspx输出的是js内容就可以了
然后你在这个abc.aspx里读取数据库,并生成document.write输出新闻的语句
<script type="text/javascript" src="abc.aspx"> </script> 报脚本错误
如果换成是JS文件的话就没有错误,上面的这个语句还有其他的写法吗
{
int id = int.Parse(Request.QueryString["id"]);
if (!Page.IsPostBack)
{
Getlist(id);
}
} public string Getlist(int id)
{
string content = string.Empty; content += "<ul>";
for (int i = 0; i < id; i++)
{
content += "<li>";
content += "第一条新闻";
content += "</li>";
}
content += "</ul>"; return content; }
这里我没有操作数据库了,其实大致是如此,只不过把循环部分换成是根据传来的参数读取数据罢了。相信你应该是很容易看懂的
恩。就是这样了。有什么问题及时回复。。
3.定义一个公有方法,返回新闻列表的HTML代码。 4.在前台页面去掉其它的HTML代码,调用这个方法,然后把得到的字符串用JS的方法输出。
5.其它页面就调用这个JS就可以了,JS src中的参数是可以传达到后台的。。
楼主送分吧。哈哈。。50分有点少。。一人分一点喽祝元旦快乐!!
你好,谢谢你的好思路,我用了你的代码,在我这里出现了一些小问题,不知道如何解决;
页面可以浏览,但是浏览的结果是这样的:
var list; list=
第一条新闻
第一条新闻
第一条新闻
第一条新闻
第一条新闻
; document.write(list);
这行代码还是报错<script language="javascript" src="abc.aspx?classid=2"> </script>
如果是链接的JS文件则不报错
报错的原因,估计是你的2个文件编码不一致
比如abc.aspx编码是utf-8,而引用文件是gb2312,改成一致的编码试试。
另外,这个abc.aspx不能用gridview,因为它生成的是html,不是js
你可以用Repeater代替至于哪些控件可以用,哪些控件不能用,你可以自己测试,比如放入控件后,直接访问abc.aspx页面,看看生成的html是否js格式,不是,就不行。
abc.aspx是按照你的代码,把HTML端清空,只留你写出来的代码,CS端也是按照你的写法的
default.aspx的HTML端加入<script language="javascript" src="abc.aspx?id=2"> </script>但是在浏览default.aspx页面的时候还是报脚本错误,不知道是我哪里做错了
还要麻烦你,不好意思了
我在ABC.ASPX页面里是这样做的
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="abc.aspx.cs" Inherits="abc" %> var list;list='<%=Getlist(5) %>';document.write(list);
加了单引号就可以了祝大家元旦快乐