Parameter passing using Javascript+actionFunction in visualforce

http://salesforceworld.blogspot.co.uk/2011/06/parameter-passing-using.html

Parameter passing using Javascript+actionFunction in visualforce

In visualforce, there is a method for passing parameters from visualforce page to controller using javascript and actionFunction. Here is the example;

/*JavaScript*/
  1. <script type="text/javascript">  
  2. function doSave(date) {  
  3.     paraFunction(document.getElementById(date).value);  
  4. }  
  5. </script>  

/*Action Function*/
  1. <apex:actionFunction name="paraFunction" action="{!saveInterviewDate}" rerender="view">       
  2.      <apex:param id="aname" name="interviewDate" value="" />  
  3.  </apex:actionFunction>  

/*Call the javaScript from here*/
  1. <apex:commandLink onclick="doSave('{!$Component.interviewDate}');">                 
  2.                        <apex:commandButton value="Save"/>  
  3.                    </apex:commandLink>  

/*get the parameter in controller*/
  1. String interviewdate=Apexpages.currentPage().getParameters().get('interviewDate');  

### Function Caller in Programming Context In programming, a **function caller** refers to the entity or piece of code that invokes a function. The interaction between functions and their callers is fundamental to procedural decomposition and modular design principles. A function can be called by another part of the program using its name followed by parentheses containing any required arguments. This mechanism allows for reusability and abstraction within software development[^1]. #### Usage Examples Below are several examples demonstrating how different types of calls work: - Simple call without parameters: ```python def greet(): print("Hello!") greet() # Calls the greet function ``` - Call with positional arguments: ```python def add(a, b): return a + b result = add(3, 5) # Passes two integers as arguments print(result) ``` - Handling errors during invocation through propagation mechanisms like `?` operator (in languages supporting it): When an error occurs inside a function, instead of handling it locally, one may choose to propagate this back up to where the original request was made. In some modern languages such as Rust, there exists special syntax (`?`) which simplifies returning from nested operations when encountering issues while still maintaining readability: ```rust fn process_data(input: &str) -> Result<String, std::io::Error> { let processed = read_file_contents(input)?; // If reading fails here, returns immediately. Ok(processed.to_uppercase()) } ``` This approach ensures cleaner separation between business logic and exception management concerns. --related questions-- 1. How does parameter passing differ across various programming paradigms? 2. What best practices should developers follow regarding function naming conventions? 3. Can you explain what tail recursion optimization means in functional programming contexts? 4. Describe common patterns used for asynchronous function invocations in JavaScript applications. 5. Provide insights into designing APIs considering both usability and performance aspects.
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值