Find your content:

Search form

You are here

Javascript / Visualforce Integration

 
Share

I'm having some problems with some javascript / visualforce integration.

What i'd like to do is when the user clicks a button do some javscript error checking calling and if it fails, display a pop up and stay on the page without refreshing (i.e. i don't want to lose the client side stuff). I have the error checking working,and i prevent the page from submiting. i'm not sure if i did it right- i'm adding an action to the command button and adding an onSubmit method to the form.

If it passes- generate a string from that check method and pass it to the apex controller. I'm stuck on this too.

<apex:page extensions="customizationExtension" standardController="Customization__c" standardcontroller="Customization__c"><apex:messages />
    <script>

    function check(){
     var flag = false;
    var successCodes = "start";
    // do a bunch of error checking.


    if (flag=== true){
        alert("Please make a selection for each field");
        return false;
    }

    // <---------------------        Send the success Codes to controller??
      return true; 
};


    </script>
    <apex:form onsubmit="check()">
        <apex:pageblock mode="maindetail" title="{!$ObjectType.Customization__c.label} Detail">
         <apex:pageBlockButtons >
            <apex:commandButton action="{!mySave}" value="Generate" onclick="return check();" />   
         </apex:pageBlockButtons>


        </apex:pageblock>
    </apex:form>
</apex:page>

Apex:

    public pagereference mySave(){

        system.debug(test);
        PageReference p = new PageReference('/001');
        return p;
    }

Attribution to: PartOfTheOhana

Possible Suggestion/Solution #1

This is the Ideal Case for using ActionFunction

Create an action function and call that via JavaScript

 <script>

function check(){
 var flag = false;
var successCodes = "start";
// do a bunch of error checking.


if (flag=== true){
    alert("Please make a selection for each field");
    return false;
}

// <---------------------        Send the success Codes to controller??
  callsave();//Call Action Function SFDC

};

</script>

<apex:form onsubmit="check()">
    <apex:pageblock mode="maindetail" title="{!$ObjectType.Customization__c.label} Detail">
     <apex:pageBlockButtons >
        <apex:commandButton action="{!mySave}" value="Generate" onclick="return=check();" />   
     </apex:pageBlockButtons>
 <!-- Define the JavaScript function sayHello-->
    <apex:actionFunction name="callsave" action="{!mySave}" />

    </apex:pageblock>
</apex:form>

http://www.infallibletechie.com/2012/10/calling-controller-method-using.html


Attribution to: Mohith Shrivastava
This content is remixed from stackoverflow or stackexchange. Please visit https://salesforce.stackexchange.com/questions/32091

My Block Status

My Block Content