I will suggest you to use the Client Side Rendering like below:
(function () {
function registerRenderer() {
var ctxForm = {};
ctxForm.Templates = {};
ctxForm.Templates = {
Fields : {
'LinkTitle': { //------ Change Hyperlink of LinkTitle
View : function (ctx) {
var url = String.format('{0}?ID={1}', "/sites/SiteName/Lists/ListName/EditForm.aspx", ctx.CurrentItem.ID);
return String.format('<a href="{0}" onclick="EditItem2(event, \'{0}\');return false;">{1}</a>', url, ctx.CurrentItem.Title);
}
},
}
};
SPClientTemplates.TemplateManager.RegisterTemplateOverrides(ctxForm);
}
ExecuteOrDelayUntilScriptLoaded(registerRenderer, 'clienttemplates.js');
})();
Here I have added the edit form link on Title (linked to item with edit menu)
column whose internal name is LinkTitle
. If you want to add it on another column then you need to add the internal name of your column instead of LinkTitle
.
You can get the internal name of your column by following this article: How to find the Internal name of columns in SharePoint Online?
How to set the JSLink property of your Web Part:
For detailed steps, check my answer given at: sharepoint 2013 list expand/collapse multiple line text column