Razor

Razor 是asp.net mvc下的一种前端标记语法类似jquery 以及PHP或者java的jsp中的标记语法,但是更加优雅和方便。逻辑都是后端代码。在这里我用的是C#,对于前端小白来说是很好理解的。具体的使用方法可以百度Razor教程 会有很多的基础教育平台。这不是本文讨论的重点。Razor在前端界面中需要和HTML或js混编,如果混编的格式不对会引起前端的页面的页面渲染混乱,或者js的失效。本文将和大家讨论怎么使用混编。欢迎各位道友讨论,斧正。

1.C#与Html混编

这个是大家都比较熟悉的混编方式 也是Razor的主要用法, 可以实行用后端的C#进行传值和简单的页面逻辑判断。比较优雅的实行mvc模式下的前端代码的编写。也使对前端的编码效率有了提升。

混编代码实例

效果

可以看出 一般比较长的C#代码可以用中括号{}包含起来编写 其中添加HTMl代码是没有影响的 但是要有明确的HTML开始符和结束符。

而Html语言中插入C#代码需要加入@关键字 不然会被当成一般字符识别使用

还有for循环

当前台的C#代码有多行时,如果这些代码是连续的中间没有HTML代码隔断,那只需要开头的一个@符号即可。

当然也可以在C#中向前台打印输出一些值 这就要用到 @:

总之 @: 负责打印 @负责输出变量 也可以 @:@变量名 这样的方式打印变量

2.js与Html混编

在js中 由于没有Html那样的开始标签和结束标签 在 C#中不能直接输入js代码 这样就没办法实行混编了 这个时候就是出马了

这也是我在网上找了好几篇文章才发现的新奇知识点(原谅我这个小白) 先上代码

model为空时js的代码为

model不为空时js的代码为

若不加上 标签 js代码就会被当成 C#代码执行 不仅不能达到我们的目的还会是我们的的js或C#代码失效和报错

这点有兴趣的道友可以验证一下就不列出错误代码了。

最后!注意 Razor会先执行C#代码 所以HTML和JS是无法对C#代码赋值和判断的 只有等到C#编译生成确切的标量值后才会执行JS和Html代码

html js php 混编,Razor标记语言和HTML,js混编相关推荐

  1. 三大角度 PK ,Go 语言和 Node.js 谁胜谁负?

    百度智能云 云生态狂欢季 热门云产品1折起>>>   Node.js 与 Go 语言一直是互联网大战中的主战场,虽说按照普通的各项指标对比,那么这场战争可能在很长时间内都难分胜负,但 ...

  2. r语言和python-R语言和Python一块学习会弄混吗

    原标题:R语言和Python一块学习会弄混吗 感谢关注天善智能,走好数据之路↑↑↑ 欢迎关注天善智能,我们是专注于商业智能BI,人工智能AI,大数据分析与挖掘领域的垂直社区,学习,问答.求职一站式搞定 ...

  3. vue高德地图JS API 实现海量点标记展示

    官方文档:海量点标记-覆盖物-教程-地图 JS API | 高德地图API 需求:根据后台接口返回的部分数据,这里仅做展示 ,可参考使用. 可以加入弹窗点击的时候. 实现效果: JSAPI 的加载 J ...

  4. 理解Babel是如何编译JS代码的及理解抽象语法树(AST)

    Babel是如何编译JS代码的及理解抽象语法树(AST) 1. Babel的作用是?    很多浏览器目前还不支持ES6的代码,但是我们可以通过Babel将ES6的代码转译成ES5代码,让所有的浏览器 ...

  5. vue 给圆遮盖物添加文字 高德地图_通过 Vue + 高德地图 JS API 在地图上标记咖啡店...

    通过 Vue + 高德地图 JS API 在地图上标记咖啡店 由 学院君 创建于2年前, 最后更新于 2年前 版本号 #1 在上一篇教程中我们为咖啡店地址进行了地理编码,这样,就可以调用高德地图支持的 ...

  6. 高德地图JS API之海量点标记十万以内的点

    高德地图JS API之海量点标记十万以内的点 怎么引入高度地图就不写了,官方是这样说的:当需要在地图展示数量为十万以内的点并且需要较好的性能表现时,可以使用 AMap.MassMarks 类.AMap ...

  7. #Android笔记# 超级足球app 开发总结(二)—— SpannableString根据标记插入文字实现图文混排

    最近利用业余时间,开发了一款基于懂球帝接口数据的足球资讯app,整体的UI也是仿照懂球帝设计的.这是一个比较综合的项目,用到了不少以前没用过的组件和api,而且产生了很多新的开发思路,有些实现方式也是 ...

  8. JS中的函数概念和C语言的概念是类似的,c语言和JavaScript的区别有哪些?

    c语言和JavaScript在语法结构上有很多相似(例如if条件语句.while循环.switch语句.do-while循环等),那么它们之间有什么不同?下面本篇文章就来给大家介绍一下c语言和Java ...

  9. 语言翻译成汇编语言_学习编程有没有必要从C语言和C++学起?应该怎么学?

    硬件层级:这里也就是实体硬件,包括:CPU.内存.显卡等等...这些都不属于软件的范畴内. 汇编层级:在之前没有C/C++以及java之前,是汇编的年代.那么汇编语言对于我们来说,可读性是很查的,不适 ...

最新文章

  1. 分享|智办事助力杭州佰勤医疗器械组织管理数字化过渡
  2. 七十六、Python | Leetcode二分查找和分治算法系列
  3. 【百度地图API】如何制作一张魔兽地图!!——CS地图也可以,哈哈哈
  4. 摇杆控制LED灯的亮度
  5. tcp丢包率_网络编程 | TCP/IP基础知识
  6. 第一行代码笔记-第五章
  7. java 大字符集_JAVA语言之java 乱码 字符集编码
  8. Jensen不等式证明
  9. 计算机考试的话语,鼓励别人考试的句子
  10. loongson龙芯屏幕分辨率设置1280×1024
  11. Netpod Alive网络拓扑图生成、绘制有生命的网络拓扑图工具
  12. Java版90经典坦克大战下载_经典90坦克大战
  13. canopen 报文格式_CANopen协议报文处理
  14. android国外网站
  15. 今日新网络舆情信息监测收集技术解决办法
  16. 面向5G的C-RAN网络架构
  17. 整人小代码(原创,纯属娱乐)
  18. Linux嵌入式软件面试整理
  19. 小清新有木有,豆瓣五款移动应用介绍
  20. 快来带您了解低轨移动卫星通信的发展意义

热门文章

  1. [Android] 触屏setOnTouchListener实现图片缩放、移动、绘制和添加水印
  2. [Android] The connection to adb is down, and a severe error has occured
  3. Git内部原理之深入解析Git的引用和包文件
  4. iOS之深入解析bitcode的功能与应用
  5. 【数据结构与算法】之深入解析二叉树的算法实现和递归套路深度实践
  6. 2019第十届蓝桥杯C/C++ A组省赛 —— 第二题: 数列求值
  7. 数据挖掘(data mining),机器学习(machine learning),和人工智能(AI)的区别是什么? 数据科学(data science)和商业分析(business analytics
  8. Windows下编程需要看哪些书
  9. 【Tools】Bandicam录屏软件概述
  10. 【Tools】Visual Studio 2019下载和安装