ASP.NET按钮单击“开始”中的javascript函数,然后停止表单提交



我有这种情况:

@using (Html.BeginForm("CreateNewApplication", "Token", FormMethod.Post, new { enctype = "multipart/form-data" }))
{
    <label for="app-name" class="op-form op-label">Application:</label>
    @Html.TextBoxFor(a => a.appName, new { @placeholder = "Nome dell'applicazione", @class = "op-form op-text app-name" })<br />
    <label for="token" class="op-form op-label">Token:</label>
    <button id="generate-token" class="op-form" value="Genera Token">Generate Token</button>
    @Html.TextBoxFor(a => a.appToken, new { @placeholder = "Token", @id = "token", @class = "op -form op-text token" })<br />
    <input id="submit" type="submit" class="op-form op-submit" value="Submit" />
}

和按钮调用此JavaScript函数:

$('#generate-token').click(function () {
    var token = Math.random().toString(36).slice(2);
    $("#token").val(token);
});

问题是,当单击按钮时,JavaScript函数被正确调用,但也称为我的令牌控制器中的createNewtoken方法。虽然我只想在单击按钮上调用JavaScript并在单击提交时调用方法控制器。可以做吗?如何?

问题:

在"表单"元素中,当未提及类型时,按钮的默认行为为"提交"

因此,单击按钮,您的表格就会立即提交。

解决方案:type="button"属性添加到您的button元素中。

<button id="generate-token" type="button" class="op-form" value="Genera Token">Generate Token</button>

来源http://www.w3schools.com/tags/tag_button.asp

相关内容

  • 没有找到相关文章

最新更新