重要なお知らせ

「教えて! goo」は2025年9月17日(水)をもちまして、サービスを終了いたします。詳細はこちら>

電子書籍の厳選無料作品が豊富!

いつもお世話になっております。
HTMLとPHPでサイトを構築しております。
ラジオボタンをクリックした時、イベントを発生したいのですが、どこのサイトを探してもありません(当然かも知れませんが。。。)。
Javascriptは使用できないのです。
また、<form>の中のSubmitボタンも使用せず、ラジオボタンクリックでのイベント発生は可能なのでしょうか?

有識者の方、ご教示よろしくお願いいたします。

A 回答 (8件)

送信してしまうようなラジオボタンはラジオボタンの意味がないのでできたとしてもやるべきではありません。

    • good
    • 1
この回答へのお礼

ありがとう

お礼日時:2025/02/20 14:44

No3です。



送信方法自体はsubmitでも良いのなら・・・


HTMLには
<form action="送信先.php">
<p><label>&#x1f518; ラジオボタン1
<input name="button1" type="submit"></label>
<p><label>&#x1f518; ラジオボタン2
<input name="button2" type="submit"></label>
</form>

などとしておいて、CSSで
form input[type="submit"] { display: none; }

としておけば、ラジオボタンの表示をクリックすることでsubmitが発生し送信されるようになります。
どのボタンが押されたかは、inputのnameが渡されるので、判別ができるでしょう。
    • good
    • 1
この回答へのお礼

CSSで実現可能なのですね!
勉強してみます。ありがとうございます

お礼日時:2025/02/20 14:44

JavaScriptを全く書かないで実現することは不可能です。


「複雑なJavaScriptを書かない」なら、下記のような方法もあります。

<form action="process.php" method="post">
<label>
<input type="radio" name="option" value="1" onchange="this.form.submit()"> 選択1
</label>
<label>
<input type="radio" name="option" value="2" onchange="this.form.submit()"> 選択2
</label>
<label>
<input type="radio" name="option" value="3" onchange="this.form.submit()"> 選択3
</label>
</form>
    • good
    • 1
この回答へのお礼

ありがとう

お礼日時:2025/02/20 14:43

No.1です。


ちなみに、マイクロソフトのC#言語で、しばらく前から使えるようになったBlazor(ブレイザー) を使う開発方法だと、Webアプリを、ローカルで使うデスクトップアプリ感覚で開発できたりします。
JavaScriptは使用しません。
とはいえ、サーバ側に.Net関連のソフトを入れたりしないとダメなど、JavaScriptを使うよりも、セキュリティとか設定に対する障壁は高いから、一般企業での利用は無理でしょうけどね。
    • good
    • 1

JavaScript を使用すれば onclick や onchange で処理できるが、JavaScript を使用しない方法はありません。

    • good
    • 2
この回答へのお礼

ありがとう

お礼日時:2025/02/20 14:41

こんにちは



>ラジオボタンをクリックした時、イベントを発生したいのですが~
最終的に何をなさりたいのかわかりませんけれど・・

イベントの発生/非発生で言えば、DOMイベントは発生しているはずです。
(何もしていなければ、そのイベント発生を捉えられないだけ)
例えば、単純にCSS等で対応できる内容であれば、そのようなCSSを設定しておくことで対応は可能です。
(HTMLの構成や、内容の複雑さにもよりますけれど)

サーバー側で取得したいという意味なら、何らかの形でサーバに送信することが必要になります。
 「イベントの発生を捉えて、サーバに送信する」
という処理を追加する必要があり、一般的にはjavascriptでこの処理を行っています。

>Javascriptは使用できないのです。
「使ってはいけない」ということでしょうか?
もしそうであるなら、その条件内で対応できるようなHTMLの構成やUIを考えるしかないと思いますけれど・・

最も簡単なのは(ご質問文にもありますが)、
ラジオボタンをセットして、送信ボタン(=submit)を押してもらうようなUIだと思います。

ご質問文からは2アクションになるのが不満なようにも受け取れますが、単純にそれだけなら、<button type="submit">を表示上はラジオボタンに見えるように表示しておいて、この見かけ上のラジオボタンを押すとsubmitが発生するようなギミックはCSSでも可能でしょう。
    • good
    • 1

クリックやマウスオーバーでのイベント発生ではJavaScriptが必須です。


HTML5においてはJavaScriptなしには何もできません。

会社のセキュリティ対策で使えないならあきらめるほかありません。
    • good
    • 2
この回答へのお礼

ですよね。。。知ったか上司の思いです。
ありがとうございます!

お礼日時:2025/02/19 14:24

たぶんラジオボタンクリックでのイベント発生は、できなかった気がします。


なお、一般的に、サイトを作る場合、通常だとJavascriptは必須になる気がします。使えないサイトなら、別のサーバーを利用されるほうがいいと思います。
    • good
    • 2
この回答へのお礼

ですよね。。。
ありがとうございます!

お礼日時:2025/02/19 14:24

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

このQ&Aを見た人はこんなQ&Aも見ています


このQ&Aを見た人がよく見るQ&A