プロが教えるわが家の防犯対策術!

いつもお世話になっております。
フォーム外に設置したボタンでフォーム内容を送信したいです。

まず、以下の環境で作成しています。
VisualStudio2015
MVC5

そして以下のような画面を作成しております。

<input type=”submit” id=”sample” name=”sample” value=”送信” />

//他のフォーム等を設置

@using (Html.BeginForm(”アクション名”,”コントローラー名”))
{
   //一覧等表示
   }

上記のような状況で、上のボタンを押すことで下のフォームの内容を送信したいです。
ID指定やFormsetを試しましたが、望んだ挙動になりませんでした。

お手数お掛けしますが、ご教授のほど、よろしくお願いします。

A 回答 (2件)

全てのブラウザがjavascriptを利用できるとは限りません。

またテキストブラウザもありますから、あくまで
<form action="">
<input type="submit">
</form>
の構造は変えません。変えてはなりません。
 そして、スタイルシートでのプレゼンテーションを変えればよい。
文書構造とプレゼンテーションは分けて考えましょう。

★サンプル
 タブは_に置換してあるので戻す。

<!doctype html>
<html>
<head>
_<meta charset="utf-8">
_<title>サンプル</title>
_<meta name="description" content="">
_<meta name="author" content="ORUKA">
<style media="screen">
<!--
section form input[type="submit"]{
_position:absolute;
_top:20px;
_right:20px;
}
-->
</style>
</head>
<body>
_<header>
__<h1 id="title">Your title</h1>
__<nav>
___<ul>
____<li><a href="#">Some</a></li>
____<li><a href="#">navigation</a></li>
____<li><a href="#">links</a></li>
___</ul>
__</nav>
_</header>
_<section>
__<h2>A smaller heading</h2>
__<form action="./" >
___<table border="1">
____<tr>
_____<th>名前</th><td><input type="text" size="10" name="name"></td>
____</tr>
____<tr>
_____<th>住所</th><td><input type="text" size="20" name="address"></td>
____<tr>
___</table>
___<input type="submit" value="送信">
__</form>
__<aside>
___<h3>Something aside</h3>
__</aside>
_</section>
_<footer>
__<h3>A nice footer</h3>
_</footer>
</body>
</html>
    • good
    • 0
この回答へのお礼

ご回答ありがとうございます。

望む動作が出来ました。
スタイルシートによる配置の操作が苦手な為、もっと勉強していきたいと思います。

お礼日時:2017/03/28 09:49

1案ですが、JavaScriptとhtmlでやれば可能だと思います。


ボタンが押されたら、JavaScriptを実行する。
(onclickでJavaScriptを実行)

例えば以下(適当なフォームですが)

<form id = "test">
<button onclick = "load1();">実行</button>←form釦は無くて良いと思う。
<p>
名前:<input type="text" name="name" size="40">
</p>
<p>
性別:<input type="radio" name="sex" value="male">男
<input type="radio" name="sex" value="female">女
</p>
<p>
ご感想:<br>
<textarea name="kanso" rows="4" cols="40"></textarea>
</p>
</form>
<br />
<br />
<br />
<button onclick = "load1();" form = "test">実行</button>←form外ボタン



load1()はJavaScript
function load1(){・・・・・・}
    • good
    • 0
この回答へのお礼

ご回答ありがとうございます!

Javaで操作を加えることが出来たのですね。
参考になりました。

申し訳ないのですが
No.2で頂いた回答のように、ブラウザへの配慮とコードの見やすさを考えて
今回はそちらの案を採用しました。

また機会があれば、よろしくお願いします。

お礼日時:2017/03/28 09:46

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!