日期:2014-05-18  浏览次数:20494 次

关于模板引擎的问题。。。。。求助阿。
最近在学习模板引擎技术。
这是aspx页面的cs代码:
  protected void Page_Load(object sender, EventArgs e)
  {

  TemplateManager tm = new TemplateManager();
  tm.LoadTemplate(HttpContext.Current.Server.MapPath("~/Login/login.htm"));
  tm.Functions.Add("Vaa", new TemplateFunction(Vaa));
  Response.Write(tm.Process());
  Response.End();
  }

  static object Vaa(object[] args)
  {
  if ((string)args[0] == "3" && (string)args[1] == "3")
  {
  return true;
  }
  else
  {
  return false;
  }
  }

  }

这是html模板的js:
<script type="text/javascript">
  function login()
  {
   
  var a=document.getElementById("txtUser").value;
  var b=document.getElementById("txtPwd").value;
  alert('#Vaa("2","2")#');//这样静态的传值可以, 怎么给它动态的传值?把页面控件的值传给它?比如怎样把a和b传给它呢??
   
}
</script>

------解决方案--------------------
这叫什么乱七八糟的“模板引擎”啊?!

在aspx你只要写
HTML code
<%= MyProc() %>

------解决方案--------------------
如果真的需要什么可替换,切换theme、ascx好了。如果你担心用户不懂的如何把其它网站里调试好了的并且编译好了的ascx放入你的网站,在发布你的网站是不要取消“允许修改此预编译网站”的选项就好了(这样asp.net运行时自动编译任何未完全编译的文件)。总之用变量、方法以asp风格来替换html的工作根本就是aspx、ascx中的
HTML code
<%= abc %>

------解决方案--------------------
探讨
<%= abc %>

------解决方案--------------------
aspx 就是一个极其强大的模板引擎了。