我有2个单选按钮,每个按钮都执行操作并重定向到该操作。但我需要它来保留我当前的页面(或本例中的一周),以便重定向到正确的页面。
我认为我没有在onclick中正确使用php语法。
echo ' <input type="radio" ' . (($spreads == 'yes') ? ' checked="checked"' : '') . ' onclick="window.location=\'' . ((!empty($_GET['week'])) ? '?week=' . (int)$_GET['week'] : '') . '\'&action=spreads\'"/><label>Show</label>' . "\n";
因此它应该获得用户所在的一周,并重定向。因此,URL类似于:http://www.testsite.com/page.php?week=4?action=spreads
编辑:我应该已经提到它始于回声内部。
编辑2:如果我使用变量,它就像我想要的那样工作。很奇怪......我还是想知道如何在没有变量的情况下使用它。 工作原理:
$week_number = ((!empty($_GET['week'])) ? '?week=' . (int)$_GET['week'] : '');
//radio button
echo ' <td><input class="radio" type="radio" id="Show" ' . (($spreads == 'yes') ? ' checked="checked"' : '') . ' value="Show" onclick="location.href=\''.$week_number.'&action=spreads\'"/><label class="choice" for="Show">Show</label>' . "\n";
答案 0 :(得分:0)
您使用&
汇总了url-params,它必须是window.location
而不是location.href
。所以你的代码应该如下:
value="Show" onclick="window.location=\'' . ((!empty($_GET['week'])) ? '?week=' . (int)$_GET['week'] : '') . '\'&action=spreads\'"/><label class="choice" for="Show">
如果您想要使用给定参数重定向到另一个网址,请务必添加baseurl。
修改强>
我再次编辑了我的代码,因为您似乎错过了网址前面的开头单引号。 如果这也不起作用,请确保使用此特定行的完整php echo更新您的问题。