Скрыть кнопку отправки для формы

Я asp.net-MVC использую синтаксис BeginForm на моей исходной странице ciew, и мне сказали, если вы хотите, чтобы форма была отправлена, у вас должна быть кнопка отправки в конце оператора using. Я не хочу использовать кнопку для вызова желаемого действия. У меня есть ссылка на действие, настроенная следующим образом:

  <%=Html.ActionLink("" + CreateMore, "Create", "", new { @class = "Create" })%>

и я хочу, чтобы форма отправлялась при щелчке по этой ссылке действия, поскольку они оба выполняют одно и то же действие .. и я не хочу видеть кнопку «Отправить»:

  <input type = "submit" />

потому что ссылка выглядит лучше

Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
1
0
6 601
4
Перейти к ответу Данный вопрос помечен как решенный

Ответы 4

В чем вопрос?

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 для тех пользователей, у которых отключен javascript, иначе они увидят и ссылку, и кнопку.

Corey Downie 09.01.2009 19:57

Пробуя этот способ, я получаю сообщение об ошибке: объект сохранения не поддерживает этот метод.

TStamper 09.01.2009 20:56

Javascript подойдет, но я обычно делаю

style = "position: absolute; top: -5000px" скроет кнопку в верхней части экрана, поэтому просто измените число, если ваша форма слишком длинная.

спасибо, monmonja - это решило еще одну мою проблему. когда вы скрываете кнопку отправки (даже просто используя css style = "display: none;"), это предотвращает публикацию формы при нажатии кнопки ввода. Однако, если я воспользуюсь вашей идеей и просто взорву кнопку в бесконечность (!), Она отлично сработает.

Ben Barreth 25.05.2012 20:20

Другие вопросы по теме