开发者

Jquery set an event function on a form

I have a form thats displayed in a modal box now I want to be able to use the same modal box for 2 different pages 开发者_StackOverflow社区where they do slightly different things. Is there a way I can set an event or something for the forms submit button to set which javascript function it calls.

I want to do this from within javascript without changing my form code.

Whats the best way to do this? Can I set a function to a variable and have it called by my button code?

ie:

var buttonFunction;
//Set the button function on load

function MyButtonFuntion() {
    buttonFunction();
}


you could do it like this:

var buttonFunction;
if(someCondition){
  buttonFunction = function(){
     alert("some action");
  };
}else{
  buttonFunction = function(){
     alert("other action");
  };
}

function MyButtonFuntion() {
    buttonFunction();
}


You may declare a variable with the function name to be called on submit. The following code is an example. Declaring the function to call in a variable functionToCall inside the form will always work here.

<script type="text/javascript">
    function callMyFunction(formName) {
        var formObj = eval("document." + formName);
        if(formObj != null) {
            var functionToCall = eval(formObj.functionToCall.value);
            if(functionToCall) {
                functionToCall();
            }
        }
    }
</script>
<form method="post" name="form1">
    <input type="hidden" name="functionToCall" value="form1Function"/>
    <input type="button" onclick="callMyFunction('form1')"/>
</form>
0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜