If you can use Nintex, use it (you can do it easily). Create one forms for each content Type. In the form desiner, when you open property of your fields, in Advence section, you can set de control mode of your field. So set the control mode of your field to : Display. And when the form is open in edit, your field will be in Read Only. If you want to use only JS, there is a simple Lib [SPutility JS][1] to do this, but you need to "dev" it Hope this help you [1]: https://github.com/kitmenke/sputility