Я asp.net-MVC использую синтаксис BeginForm на моей исходной странице ciew, и мне сказали, если вы хотите, чтобы форма была отправлена, у вас должна быть кнопка отправки в конце оператора using. Я не хочу использовать кнопку для вызова желаемого действия. У меня есть ссылка на действие, настроенная следующим образом:
<%=Html.ActionLink("" + CreateMore, "Create", "", new { @class = "Create" })%>
и я хочу, чтобы форма отправлялась при щелчке по этой ссылке действия, поскольку они оба выполняют одно и то же действие .. и я не хочу видеть кнопку «Отправить»:
<input type = "submit" />
потому что ссылка выглядит лучше





В чем вопрос?
style = "display: none;" скрыл бы кнопку. Вы не указываете, где столкнулись с проблемой.
Я бы еще раз обратился к jQuery для решения этой задачи
$(function(){
$('input:submit').hide(); //hide the submit button
$('#submitLinkID').click(function(){ // bind the link's click event
$('input:submit').click(); //click the hidden button
return false; //return false to stop the link from doing anything
});
});
ActionLink создаст гиперссылку, по которой вы можете щелкнуть, но на самом деле она не будет размещать форму. Вам нужно как-то добавить параметры запроса в ActionLink, если действие ожидает, что какие-то данные будут действовать. Если нет данных, с которыми можно было бы действовать, то я вообще не вижу необходимости в форме, поскольку щелчок по ссылке вызывает действие. Предполагая, что вы хотите просто использовать ссылку для отправки формы, тогда я не понимаю, зачем вам вообще нужна ActionLink или кнопка ввода. Просто добавьте в форму обычный тег привязки, как показано ниже:
<a id='submitIDLink'
href='javascript:void(0);'
onclick='document.forms[0].submit();'>Create</a>
Обратите внимание: если вы хотите, чтобы он работал независимо от того, включен ли javascript, вам нужно проявить немного больше творчества. Вы бы использовали кнопку и ссылку, но начните с видимой кнопки и скрытой ссылки. Имейте немного javascript, который запускается в готовом документе, который скрывает кнопку и показывает ссылку. В этом случае вы можете использовать что-то похожее на то, что предлагает @Corey с настройкой, чтобы показать ссылку.
Пробуя этот способ, я получаю сообщение об ошибке: объект сохранения не поддерживает этот метод.
Javascript подойдет, но я обычно делаю
style = "position: absolute; top: -5000px" скроет кнопку в верхней части экрана, поэтому просто измените число, если ваша форма слишком длинная.
спасибо, monmonja - это решило еще одну мою проблему. когда вы скрываете кнопку отправки (даже просто используя css style = "display: none;"), это предотвращает публикацию формы при нажатии кнопки ввода. Однако, если я воспользуюсь вашей идеей и просто взорву кнопку в бесконечность (!), Она отлично сработает.
Это хороший призыв держать ссылку скрытой и показывать ее с помощью javascript для тех пользователей, у которых отключен javascript, иначе они увидят и ссылку, и кнопку.