{"id":92329,"date":"2017-08-04T10:47:23","date_gmt":"2017-08-04T10:47:23","guid":{"rendered":"https:\/\/webkul.com\/blog\/?p=92329"},"modified":"2026-02-11T10:59:43","modified_gmt":"2026-02-11T10:59:43","slug":"use-apexparam-tag-visualforce","status":"publish","type":"post","link":"https:\/\/webkul.com\/blog\/use-apexparam-tag-visualforce\/","title":{"rendered":"How to Use apex:param in Salesforce Visualforce With Real Examples"},"content":{"rendered":"\n<p>What&#8217;s that one tag that surprisingly solves several interaction problems for the developers in Visualforce?<\/p>\n\n\n\n<p>Like if they want to pass dynamic IDs, capture row values from tables, and send parameters through action functions.<\/p>\n\n\n\n<p>How would they do it?<\/p>\n\n\n\n<p>That&#8217;s where apex:param quietly does the job. It can help you pass values from a <a href=\"https:\/\/webkul.com\/blog\/converting-visualforce-page-look-in-lightning-look\/\">Visualforce page<\/a> to an Apex controller.<\/p>\n\n\n\n<p>Let&#8217;s understand how this tag works with working examples.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>What is the &lt;apex:param&gt; Tag?<\/strong><\/h2>\n\n\n\n<p>The &lt;apex:param&gt; acts as a messenger between your Visualforce page and your Apex controller. It becomes useful when you want to:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>pass row-specific data from a table<\/li>\n\n\n\n<li>Send dynamic values through buttons or links<\/li>\n\n\n\n<li>call Apex from JavaScript<\/li>\n\n\n\n<li>trigger partial page updates with parameters<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Parents Component of apex:param&nbsp;<\/strong><\/h2>\n\n\n\n<p>The apex:param tag can&#8217;t work on its own, and it always needs a parent that actually triggers the action. The tags that support apex:param as a child element are:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>&lt;apex:actionFunction><\/li>\n\n\n\n<li>&lt;apex:actionSupport><\/li>\n\n\n\n<li>&lt;apex:commandLink><\/li>\n\n\n\n<li>&lt;apex:outputLink><\/li>\n\n\n\n<li>&lt;apex:outputText><\/li>\n\n\n\n<li>&lt;flow:interview><\/li>\n<\/ul>\n\n\n\n<p>For apex:param, the value attribute must always be specified, and with it, either the assignedto or name attribute is also required.<\/p>\n\n\n\n<p>What are the meanings of these attributes, and how are they used? I am going to explain in the next part with an example.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Apex Class<\/h2>\n\n\n\n<pre class=\"EnlighterJSRAW\">public class paramtest {\n    public string value { get; set;}\n    \n    public void testdirect(){\n        system.debug(value);\n    }\n    public void testinput(){\n        value = apexpages.currentPage().getParameters().get(&#039;inpval&#039;);\n        system.debug(value);\n    }\n}<\/pre>\n\n\n\n<p>This apex class does not have much use, and the only important piece of code in it is the first line of the function testinput(). <\/p>\n\n\n\n<p>The getParameters() gets all the parameters and makes a map out of them, with the key being the name of the parameter. This name is the same name used in the apex:param attribute.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">How apex:param Works in Visualforce?<\/h2>\n\n\n\n<pre class=\"EnlighterJSRAW\">&lt;apex:page controller=&quot;paramtest&quot; docType=&quot;html-5.0&quot;&gt;\n&lt;apex:form&gt;\n\n&lt;apex:commandbutton action=&quot;{!testdirect}&quot; reRender=&quot;test&quot; value=&quot;Static value&quot;&gt;\n&lt;apex:param assignTo=&quot;{!value}&quot; value=&quot;The static value that was set from vf page&quot;\/&gt;\n&lt;\/apex:commandbutton&gt;&lt;br\/&gt;\n&lt;input type=&quot;text&quot; id=&quot;testinput&quot;\/&gt;\n&lt;input type=&quot;button&quot; onclick=&quot;testinputJS()&quot; value=&quot;Dynamic Value&quot; class=&quot;btn&quot;\/&gt;\n&lt;apex:outputPanel id=&quot;test&quot;&gt;\n&lt;apex:outputText value=&quot;{!value}&quot;\/&gt;\n&lt;\/apex:outputPanel&gt;\n&lt;apex:actionFunction action=&quot;{!testinput}&quot; name=&quot;passToController&quot; rerender=&quot;test&quot;&gt;\n&lt;apex:param value=&quot;&quot; name=&quot;inpval&quot;\/&gt;\n&lt;\/apex:actionFunction&gt;\n&lt;\/apex:form&gt;\n&lt;script&gt;\nfunction testinputJS(){\nvar str = document.getElementById(&#039;testinput&#039;).value;\nif(str.length &gt;4){\nstr= str.substring(0,4);\n}\npassToController(str);\n}\n&lt;\/script&gt;\n&lt;\/apex:page&gt;<\/pre>\n\n\n\n<p>In the VF page, we have used &lt;apex:param> at two places, one in the commandbutton and the other in the <a href=\"https:\/\/webkul.com\/blog\/action-function-visualforce-page\/\">ActionFunction<\/a>. <\/p>\n\n\n\n<p>The &lt;apex:param>, which is in the command button, has a value specified to it and is also assigned to a variable in the controller. <\/p>\n\n\n\n<p>This value will be passed to the variable in the controller if the button is clicked. This type of parameter passing is helpful when you are using it in a table over iterated values.<\/p>\n\n\n\n<p>The other is with ActionFunction, where the name of the value is specified; however, if the value is not specified, and left blank. <\/p>\n\n\n\n<p>Here we will have to manually get the data and store it in a variable, like I had done earlier in the VF page.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Output<\/h2>\n\n\n\n<p>The output of both actions will be like:<\/p>\n\n\n\n<figure class=\"wp-block-image\"><a href=\"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2017\/08\/gwinamvbyacyp66.jpg\" target=\"_blank\" rel=\"noopener noreferrer\"><img decoding=\"async\" width=\"1315\" height=\"678\" src=\"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2017\/08\/gwinamvbyacyp66.jpg\" alt=\"apex:param\" class=\"wp-image-92331\" srcset=\"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2017\/08\/gwinamvbyacyp66.jpg 1315w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2017\/08\/gwinamvbyacyp66-250x129.jpg 250w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2017\/08\/gwinamvbyacyp66-300x155.jpg 300w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2017\/08\/gwinamvbyacyp66-768x396.jpg 768w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2017\/08\/gwinamvbyacyp66-1200x619.jpg 1200w\" sizes=\"(max-width: 1315px) 100vw, 1315px\" loading=\"lazy\" \/><\/a><\/figure>\n\n\n\n<figure class=\"wp-block-image\"><a href=\"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2017\/08\/g708f0issohqto6.jpg\" target=\"_blank\" rel=\"noopener noreferrer\"><img decoding=\"async\" width=\"1315\" height=\"629\" src=\"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2017\/08\/g708f0issohqto6.jpg\" alt=\"apex:param\" class=\"wp-image-92332\" srcset=\"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2017\/08\/g708f0issohqto6.jpg 1315w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2017\/08\/g708f0issohqto6-250x120.jpg 250w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2017\/08\/g708f0issohqto6-300x143.jpg 300w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2017\/08\/g708f0issohqto6-768x367.jpg 768w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2017\/08\/g708f0issohqto6-1200x574.jpg 1200w\" sizes=\"(max-width: 1315px) 100vw, 1315px\" loading=\"lazy\" \/><\/a><\/figure>\n\n\n\n<p>That\u2019s all about using the apex:param tag. It won&#8217;t revolutionize your development process, but it really solves the passing of values from Visualforce to Apex without any hassle.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Support<\/h2>\n\n\n\n<p>Our team can audit, optimize, and redesign your Salesforce setup for reliability and speed. Reach out at <a href=\"mailto:support@webkul.com\" target=\"_blank\" rel=\"noreferrer noopener\"><strong>support@webkul.com<\/strong><\/a>.<\/p>\n\n\n\n<p>Need dedicated expertise? Hire <a href=\"https:\/\/webkul.com\/hire-salesforce-developers\/\">Webkul Salesforce developers <\/a>to stabilize and future-proof your org.<\/p>\n\n\n\n<p><\/p>\n","protected":false},"excerpt":{"rendered":"<p>What&#8217;s that one tag that surprisingly solves several interaction problems for the developers in Visualforce? Like if they want to pass dynamic IDs, capture row values from tables, and send parameters through action functions. How would they do it? That&#8217;s where apex:param quietly does the job. It can help you pass values from a Visualforce <a href=\"https:\/\/webkul.com\/blog\/use-apexparam-tag-visualforce\/\">[&#8230;]<\/a><\/p>\n","protected":false},"author":144,"featured_media":92334,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1889,1887,1888],"tags":[5232,1884,5183,5231,5233,1885],"class_list":["post-92329","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-apex","category-salesforce","category-visualforce","tag-actionsupport","tag-apex","tag-apex-salesforce","tag-apexparam","tag-getparameters","tag-salesforce"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v24.5 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>apex:param in Salesforce Visualforce With Real Examples<\/title>\n<meta name=\"description\" content=\"Master apex:param in Visualforce with real examples. Learn to pass values to the Apex controller. Updated 2026.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/webkul.com\/blog\/use-apexparam-tag-visualforce\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"apex:param in Salesforce Visualforce With Real Examples\" \/>\n<meta property=\"og:description\" content=\"Master apex:param in Visualforce with real examples. Learn to pass values to the Apex controller. Updated 2026.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/webkul.com\/blog\/use-apexparam-tag-visualforce\/\" \/>\n<meta property=\"og:site_name\" content=\"Webkul Blog\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/webkul\/\" \/>\n<meta property=\"article:published_time\" content=\"2017-08-04T10:47:23+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2026-02-11T10:59:43+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2017\/08\/download-9.png\" \/>\n\t<meta property=\"og:image:width\" content=\"825\" \/>\n\t<meta property=\"og:image:height\" content=\"260\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Yathansh Sharma\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@webkul\" \/>\n<meta name=\"twitter:site\" content=\"@webkul\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Yathansh Sharma\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"3 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/webkul.com\/blog\/use-apexparam-tag-visualforce\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/webkul.com\/blog\/use-apexparam-tag-visualforce\/\"},\"author\":{\"name\":\"Yathansh Sharma\",\"@id\":\"https:\/\/webkul.com\/blog\/#\/schema\/person\/2cf74c97cc99e81430138433b2e5a342\"},\"headline\":\"How to Use apex:param in Salesforce Visualforce With Real Examples\",\"datePublished\":\"2017-08-04T10:47:23+00:00\",\"dateModified\":\"2026-02-11T10:59:43+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/webkul.com\/blog\/use-apexparam-tag-visualforce\/\"},\"wordCount\":507,\"commentCount\":2,\"publisher\":{\"@id\":\"https:\/\/webkul.com\/blog\/#organization\"},\"image\":{\"@id\":\"https:\/\/webkul.com\/blog\/use-apexparam-tag-visualforce\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2017\/08\/download-9.png\",\"keywords\":[\"action:support\",\"Apex\",\"APEX Salesforce\",\"apex:param\",\"getParameters\",\"Salesforce\"],\"articleSection\":[\"Apex\",\"Salesforce\",\"Visualforce\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/webkul.com\/blog\/use-apexparam-tag-visualforce\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/webkul.com\/blog\/use-apexparam-tag-visualforce\/\",\"url\":\"https:\/\/webkul.com\/blog\/use-apexparam-tag-visualforce\/\",\"name\":\"apex:param in Salesforce Visualforce With Real Examples\",\"isPartOf\":{\"@id\":\"https:\/\/webkul.com\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/webkul.com\/blog\/use-apexparam-tag-visualforce\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/webkul.com\/blog\/use-apexparam-tag-visualforce\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2017\/08\/download-9.png\",\"datePublished\":\"2017-08-04T10:47:23+00:00\",\"dateModified\":\"2026-02-11T10:59:43+00:00\",\"description\":\"Master apex:param in Visualforce with real examples. Learn to pass values to the Apex controller. Updated 2026.\",\"breadcrumb\":{\"@id\":\"https:\/\/webkul.com\/blog\/use-apexparam-tag-visualforce\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/webkul.com\/blog\/use-apexparam-tag-visualforce\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/webkul.com\/blog\/use-apexparam-tag-visualforce\/#primaryimage\",\"url\":\"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2017\/08\/download-9.png\",\"contentUrl\":\"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2017\/08\/download-9.png\",\"width\":825,\"height\":260},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/webkul.com\/blog\/use-apexparam-tag-visualforce\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/webkul.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"How to Use apex:param in Salesforce Visualforce With Real Examples\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/webkul.com\/blog\/#website\",\"url\":\"https:\/\/webkul.com\/blog\/\",\"name\":\"Webkul Blog\",\"description\":\"\",\"publisher\":{\"@id\":\"https:\/\/webkul.com\/blog\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/webkul.com\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/webkul.com\/blog\/#organization\",\"name\":\"WebKul Software Private Limited\",\"url\":\"https:\/\/webkul.com\/blog\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/webkul.com\/blog\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2021\/08\/webkul-logo-accent-sq.png\",\"contentUrl\":\"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2021\/08\/webkul-logo-accent-sq.png\",\"width\":380,\"height\":380,\"caption\":\"WebKul Software Private Limited\"},\"image\":{\"@id\":\"https:\/\/webkul.com\/blog\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.facebook.com\/webkul\/\",\"https:\/\/x.com\/webkul\",\"https:\/\/www.instagram.com\/webkul\/\",\"https:\/\/www.linkedin.com\/company\/webkul\",\"https:\/\/www.youtube.com\/user\/webkul\/\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/webkul.com\/blog\/#\/schema\/person\/2cf74c97cc99e81430138433b2e5a342\",\"name\":\"Yathansh Sharma\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/webkul.com\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/631dfbfdb0f359990ee300274cf444e7dc7da6005653e2b711d3c9197caa4ab3?s=96&d=https%3A%2F%2Fcdnblog.webkul.com%2Fblog%2Fwp-content%2Fuploads%2F2019%2F10%2Fmike.png&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/631dfbfdb0f359990ee300274cf444e7dc7da6005653e2b711d3c9197caa4ab3?s=96&d=https%3A%2F%2Fcdnblog.webkul.com%2Fblog%2Fwp-content%2Fuploads%2F2019%2F10%2Fmike.png&r=g\",\"caption\":\"Yathansh Sharma\"},\"url\":\"https:\/\/webkul.com\/blog\/author\/yathansh-sharma081\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"apex:param in Salesforce Visualforce With Real Examples","description":"Master apex:param in Visualforce with real examples. Learn to pass values to the Apex controller. Updated 2026.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/webkul.com\/blog\/use-apexparam-tag-visualforce\/","og_locale":"en_US","og_type":"article","og_title":"apex:param in Salesforce Visualforce With Real Examples","og_description":"Master apex:param in Visualforce with real examples. Learn to pass values to the Apex controller. Updated 2026.","og_url":"https:\/\/webkul.com\/blog\/use-apexparam-tag-visualforce\/","og_site_name":"Webkul Blog","article_publisher":"https:\/\/www.facebook.com\/webkul\/","article_published_time":"2017-08-04T10:47:23+00:00","article_modified_time":"2026-02-11T10:59:43+00:00","og_image":[{"width":825,"height":260,"url":"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2017\/08\/download-9.png","type":"image\/png"}],"author":"Yathansh Sharma","twitter_card":"summary_large_image","twitter_creator":"@webkul","twitter_site":"@webkul","twitter_misc":{"Written by":"Yathansh Sharma","Est. reading time":"3 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/webkul.com\/blog\/use-apexparam-tag-visualforce\/#article","isPartOf":{"@id":"https:\/\/webkul.com\/blog\/use-apexparam-tag-visualforce\/"},"author":{"name":"Yathansh Sharma","@id":"https:\/\/webkul.com\/blog\/#\/schema\/person\/2cf74c97cc99e81430138433b2e5a342"},"headline":"How to Use apex:param in Salesforce Visualforce With Real Examples","datePublished":"2017-08-04T10:47:23+00:00","dateModified":"2026-02-11T10:59:43+00:00","mainEntityOfPage":{"@id":"https:\/\/webkul.com\/blog\/use-apexparam-tag-visualforce\/"},"wordCount":507,"commentCount":2,"publisher":{"@id":"https:\/\/webkul.com\/blog\/#organization"},"image":{"@id":"https:\/\/webkul.com\/blog\/use-apexparam-tag-visualforce\/#primaryimage"},"thumbnailUrl":"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2017\/08\/download-9.png","keywords":["action:support","Apex","APEX Salesforce","apex:param","getParameters","Salesforce"],"articleSection":["Apex","Salesforce","Visualforce"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/webkul.com\/blog\/use-apexparam-tag-visualforce\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/webkul.com\/blog\/use-apexparam-tag-visualforce\/","url":"https:\/\/webkul.com\/blog\/use-apexparam-tag-visualforce\/","name":"apex:param in Salesforce Visualforce With Real Examples","isPartOf":{"@id":"https:\/\/webkul.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/webkul.com\/blog\/use-apexparam-tag-visualforce\/#primaryimage"},"image":{"@id":"https:\/\/webkul.com\/blog\/use-apexparam-tag-visualforce\/#primaryimage"},"thumbnailUrl":"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2017\/08\/download-9.png","datePublished":"2017-08-04T10:47:23+00:00","dateModified":"2026-02-11T10:59:43+00:00","description":"Master apex:param in Visualforce with real examples. Learn to pass values to the Apex controller. Updated 2026.","breadcrumb":{"@id":"https:\/\/webkul.com\/blog\/use-apexparam-tag-visualforce\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/webkul.com\/blog\/use-apexparam-tag-visualforce\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/webkul.com\/blog\/use-apexparam-tag-visualforce\/#primaryimage","url":"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2017\/08\/download-9.png","contentUrl":"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2017\/08\/download-9.png","width":825,"height":260},{"@type":"BreadcrumbList","@id":"https:\/\/webkul.com\/blog\/use-apexparam-tag-visualforce\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/webkul.com\/blog\/"},{"@type":"ListItem","position":2,"name":"How to Use apex:param in Salesforce Visualforce With Real Examples"}]},{"@type":"WebSite","@id":"https:\/\/webkul.com\/blog\/#website","url":"https:\/\/webkul.com\/blog\/","name":"Webkul Blog","description":"","publisher":{"@id":"https:\/\/webkul.com\/blog\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/webkul.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/webkul.com\/blog\/#organization","name":"WebKul Software Private Limited","url":"https:\/\/webkul.com\/blog\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/webkul.com\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2021\/08\/webkul-logo-accent-sq.png","contentUrl":"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2021\/08\/webkul-logo-accent-sq.png","width":380,"height":380,"caption":"WebKul Software Private Limited"},"image":{"@id":"https:\/\/webkul.com\/blog\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/webkul\/","https:\/\/x.com\/webkul","https:\/\/www.instagram.com\/webkul\/","https:\/\/www.linkedin.com\/company\/webkul","https:\/\/www.youtube.com\/user\/webkul\/"]},{"@type":"Person","@id":"https:\/\/webkul.com\/blog\/#\/schema\/person\/2cf74c97cc99e81430138433b2e5a342","name":"Yathansh Sharma","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/webkul.com\/blog\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/631dfbfdb0f359990ee300274cf444e7dc7da6005653e2b711d3c9197caa4ab3?s=96&d=https%3A%2F%2Fcdnblog.webkul.com%2Fblog%2Fwp-content%2Fuploads%2F2019%2F10%2Fmike.png&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/631dfbfdb0f359990ee300274cf444e7dc7da6005653e2b711d3c9197caa4ab3?s=96&d=https%3A%2F%2Fcdnblog.webkul.com%2Fblog%2Fwp-content%2Fuploads%2F2019%2F10%2Fmike.png&r=g","caption":"Yathansh Sharma"},"url":"https:\/\/webkul.com\/blog\/author\/yathansh-sharma081\/"}]}},"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/webkul.com\/blog\/wp-json\/wp\/v2\/posts\/92329","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/webkul.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/webkul.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/webkul.com\/blog\/wp-json\/wp\/v2\/users\/144"}],"replies":[{"embeddable":true,"href":"https:\/\/webkul.com\/blog\/wp-json\/wp\/v2\/comments?post=92329"}],"version-history":[{"count":5,"href":"https:\/\/webkul.com\/blog\/wp-json\/wp\/v2\/posts\/92329\/revisions"}],"predecessor-version":[{"id":525906,"href":"https:\/\/webkul.com\/blog\/wp-json\/wp\/v2\/posts\/92329\/revisions\/525906"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/webkul.com\/blog\/wp-json\/wp\/v2\/media\/92334"}],"wp:attachment":[{"href":"https:\/\/webkul.com\/blog\/wp-json\/wp\/v2\/media?parent=92329"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/webkul.com\/blog\/wp-json\/wp\/v2\/categories?post=92329"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/webkul.com\/blog\/wp-json\/wp\/v2\/tags?post=92329"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}