简体   繁体   English

单选按钮到新页面

[英]Radio buttons to new page

Hey guys sorry to ask this, but I am stumped, I want the code to go to the pages with the action when the radio button is clicked, like stupid radio button to stupid.php here's the form 嘿,不好意思问这个问题,但是我很困惑,我想让代码在单击单选按钮时转到带有操作的页面,就像stupid.php的愚蠢单选按钮是这样的形式

<form name = "quoted" method="get">
    <input id = "poster" type="text" name="poster" required="required" placeholder = "Credited Individual.">     
    <br>
    <textarea class = "actual_quote" name = "actual_quote" required="required" placeholder = "Write the question here!"></textarea>
    <br><br><br>

    <div class = "checkboxes" required="required">
        <h3 style = "margin-top:-20px;">Please select one catagory that the quote falls into.</h3>
        <label for="x"><input type="radio" name="x" value="stupid" id = "x" checked="checked" action = "stupid.php" /><span>stupid</span></label>
        <br>
        <label for="x"><input type="radio" name="x" value="stupider" id = "x" action = "stupider.php" /><span>stupider</span></label>
        <br>
        <label for="x"><input type="radio" name="x" value="stupidest" id = "x" action = "stupidest.php" /><span>stupidest</span></label>
    </div>

    <input id = "submit1" type="submit"><br>
 </form>

and here's the php on each of the pages, stupid, stupider, and stupidest, the php error is saying that actual-quote and poster are not identified indexes, help? 这是每个页面上的php(愚蠢,stupider和stupidest)的php错误,它表示实际报价和发布者未标识索引,对吗?

    <div class="wrapper">
    <div class="submissions">
    <div class="logo-logo"><h2>Question.</h2>
    <div class="checkboxes"><?= !empty($_GET['x']) ? $_GET['x'] : '' ?>
    </div>

    </div>

 <div class="top-submit"><?php echo '&#8220;' . (!empty($_GET['actual_quote']) ?  $_GET['actual_quote'] : '') . '&#8221;'; $actual_quote = $_GET['actual_quote'];?>
 </div>
 <div class="poster"><?php echo "-" .  (!empty($_GET['poster']) ? $_GET['poster'] :''); $poster =  $_GET['poster'];?>
 <div class = "like">
 <a href = "javascript:countClicksLike();" class = "btn btn-large" style = "color:green;">Like</a>
 <p id = "like" style = "color:green;">0</p>
 </div>
 <div class = "dislike">
 <a href = "javascript:countClicks();" class = "btn btn-large" style = "float:right; color:red;">Dislike</a>
 <p id = "dis" style = "color:red;">0</p>
 </div>
  </div>
 <?php 
 "INSERT INTO submissions(top-submit, poster)
 VALUES ($actual_quote, $poster)";
?>
</div>
</div>

I am sorry to ask, but I have been trying for an hour and I have run out of ideas. 抱歉,我已经问了一个小时,但我的想法已经用完了。 Any suggestions is GREATLY welcomed. 任何建议都将受到欢迎。

Just to clarify, I want each of the radio buttons, when selected, to a new page once they click the submit button, i want to have them check one radio option, and then click submit and be directed to the page. 澄清一下,我希望每个单选按钮在单击“提交”按钮后都进入一个新页面,我希望让它们选中一个单选选项,然后单击“提交”并定向到该页面。 v v

DEMO 演示

 <label for="x"><input type="radio" name="x" value="stupid" id = "x" checked="checked" action = "stupid.php" />    <span>stupid</span></label><br>

Based on your radio buttons, 根据您的单选按钮,

$("input[type=radio]").click(function() {
         window.location.href = $(this).attr("action"); 
});

So when the user clicks on any one of the radio buttons, the click handler will take him to the respective page mentioned in the action attribute. 因此,当用户单击任意一个单选按钮时,单击处理程序会将其带到action属性中提到的相应页面。

In case if you want to redirect only if the radio button is checked and not when its unchecked, use if($(this).is(":checked")) to check the condition 如果仅在选中单选按钮时才希望重定向,而在未选中时不希望重定向,请使用if($(this).is(":checked"))检查条件

I fail to understand why are you not using anchors for redirecting instead of messing up with inputs. 我不明白为什么您不使用anchors来重定向而不是搞乱输入。 If you use anchors, then you don't need any custom attributes of action on inputs. 如果使用锚,则不需要任何输入的自定义操作属性。

Moreover if you have a form then why not simply use it's action attribute for the purpose. 而且,如果您有一个表单,那么为什么不简单地为此目的使用它的action属性呢? And in the backend you can handle the redirect easily instead of relying on the javascript redirect. 而且在后端,您可以轻松处理重定向,而不必依赖javascript重定向。

Still, if you want to use inputs for navigation and redirecting and since you didn't mentioned anything about jQuery, I assume you need pure Javascript solution. 不过,如果您想使用输入进行导航和重定向,并且由于您未提及jQuery,我假定您需要纯Javascript解决方案。 You can use inline javascript in the inputs like: 您可以在输入中使用内联javascript,例如:

<label><input type="radio" action="http://www.google.com" onclick="window.location.href=this.action;"  />Google</label>

If you need a jQuery solution, refer to the solution provided above by mohamedrias. 如果您需要jQuery解决方案,请参考mohamedrias上面提供的解决方案。

Are you trying to post values to different php files based on the selection of radio button. 您是否要根据单选按钮的选择将值发布到不同的php文件中。 If yes, I think you can achieve the same using jquery. 如果是的话,我认为您可以使用jquery达到相同的效果。

$("input[type='radio']").click(function(){
$("form").attr('action',$(this).attr('action'));
});

The above code will add click event handlers to all the radio buttons. 上面的代码会将click事件处理程序添加到所有单选按钮。 When the user clicks the radio button, the action property from the radio button will be set to the form. 当用户单击单选按钮时,单选按钮的action属性将设置为表单。 When the form is submitted, it will be calling the php file set in the action property of the currently selected radio button 提交表单后,它将调用当前所选单选按钮的action属性中设置的php文件。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM