错误的值以多个提交的形式发送

时间:2012-08-12 22:34:12

标签: php forms form-submit

这是我的一些表单,有3个提交按钮

<input type="image" name="submit" value="saveasset" class="submit" src="<?=BASE_URL . '/' . IMAGE_URL . '/buttons/btn_save_changes.gif'?>" />
<input type="image" name="submit" value="savetemplate" onclick="saveTemplate(); return false;" class="add_new_link" src="<?=BASE_URL . '/' . IMAGE_URL . '/buttons/btn_new_template.gif'?>"/>
<input type="image" name="submit" value="updatetemplate" onclick="saveTemplate(); return false;" class="add_new_link" src="<?=BASE_URL . '/' . IMAGE_URL . '/buttons/btn_update_template.gif'?>"/>

当我点击第一个时,它会正确地将“saveasset”提交给动作功能。 当我点击第二个时,它会向动作函数(通过AJAX)提交'updatetemplate',即使点击的按钮是'savetemplate'。 当我点击第三个时,它正确地将“updatetemplate”提交给动作函数(通过AJAX)。

这是saveTemplate()函数(使用原型)

function saveTemplate(){
    $('add_asset').request({
        onComplete: function (response) {
            $('message_inline').show();
            $('message_inline').update(response.responseText);
        }
    });
}

如果我只有2个按钮,一切都按照我的预期运作,但我需要3个。

1 个答案:

答案 0 :(得分:1)

您可以尝试将值传递给saveTemplate()函数,并根据传入的值告诉函数的行为不同。

<input type="image" name="submit" value="savetemplate" onclick="saveTemplate('savetemplate'); return false;" class="add_new_link" src="<?=BASE_URL . '/' . IMAGE_URL . '/buttons/btn_new_template.gif'?>"/>
<input type="image" name="submit" value="updatetemplate" onclick="saveTemplate('updatetemplate'); return false;" class="add_new_link" src="<?=BASE_URL . '/' . IMAGE_URL . '/buttons/btn_update_template.gif'?>"/>