отправить форму по ссылке - PullRequest
15 голосов
/ 04 марта 2011

Это то, что я пытаюсь сделать без успеха:

<form name="something" action="ht.php" method="post">
   <a href="#" onclick="document.url.submit('helloworld');">Submit</a>
</form>

Когда я нажимаю на ссылку, я хочу опубликовать значение от helloworld до ht.php.Как я могу это сделать?

Ответы [ 5 ]

32 голосов
/ 04 марта 2011

Вы не можете просто сделать document.url.submit (), это не работает так.

Попробуйте это:

<form id="myForm" action="ht.php" method="post">
    <input type="hidden" name="someName" value="helloworld" />
    <a href="#" onclick="document.getElementById('myForm').submit();">Submit</a>
</form>

Это должно работать!

7 голосов
/ 04 марта 2011

Использование jQuery довольно просто:

$('form .submit-link').on({
    click: function (event) {
        event.preventDefault();
        $(this).closest('form').submit();
    }
});

Тогда вы просто кодируете как обычно, назначая класс submit-link ссылкам отправки формы:

<form action="script.php" method="post">
    <input type="text" name="textField" />
    <input type="hidden" name="hiddenField" value="foo" />
    <a href="#" class="submit-link">Submit</a>
</form>

Я считаю этот метод полезным, если вы хотите поддерживать эстетическую тему по всему сайту, используя ссылки, а не традиционные кнопки, так как нет встроенных сценариев.

Вот JSFiddle , хотя он никуда не отправляется.

2 голосов
/ 04 марта 2011

Попробуйте это,

<!-- you need to give some name to hidden value [index for post value] -->
<form name="something" action="ht.php" method="post">
    <input type="hidden" name="somename" value="helloworld" />
    <a href="javascript: document.something.submit();">Submit</a>
</form>

Также попробуйте это

<!-- you need to give some name to hidden value [index for post value] -->
<!-- also you can use id to select the form -->
<form name="something" action="ht.php" method="post" id="myform">
    <input type="hidden" name="somename" value="helloworld" />
    <a href="javascript: document.getElementById('myform').submit();">Submit</a>
</form>
2 голосов
/ 04 марта 2011

попробуй

<form id="frmMain" action="ht.php" method="post">
    <a href="#" onclick="document.forms['frmMain'].submit();">Submit</a>
</form>
1 голос
/ 04 марта 2011

Вы можете добавить скрытое поле на странице (установить его свойство name), установить его значение в helloworld.

Затем в форме вызова по гиперссылке по ссылке клика.submit ()

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...