当有人在下拉列表中选择一个项目时,我想重新加载当前页面,其中包含查询字符串中所选项目中ID的值,如:
http://www.example.com/mypage?id=234
我该怎么做?
答案 0 :(得分:22)
您可以使用Dutchie432提到的原始javascript版本或jQuery版本。
<select id="the_select">
<option value="123">Go to 123</option>
<option value="456">Go to 456</option>
<select>
<script type="text/javascript">
$(function(){
$("#the_select").change(function(){
window.location='http://www.domain.com/mypage?id=' + this.value
});
});
</script>
答案 1 :(得分:10)
不需要jQuery。在这种情况下,基本的Javascript会很好。
只需在您的下拉列表中添加“onchange”事件
即可<select onchange="doAction(this.value);">
<option value="123">Go to 123</option>
<option value="456">Go to 456</option>
<select>
然后,添加值更改时调用的函数
<script type="text/javascript"><!--
function doAction(val){
//Forward browser to new url
window.location='http://www.domain.com/mypage?id=' + val;
}
--></script>
OR紧凑版,没有单独的JS代码
<select onchange="window.location='http://www.domain.com/mypage?id=' + this.value;">
<option value="123">Go to 123</option>
<option value="456">Go to 456</option>
<select>
答案 2 :(得分:4)
<select id="items" onselect="javascript:reloadPage(this)">
<option name="item1">Item 1</option>
</select>
脚本:
function reloadPage(id) {
document.location.href = location.href + '?id=' + id.value;
}
答案 3 :(得分:0)
以下代码将验证
重新加载页面。
public static <V,T> V getOrUseSupplier(Map<T, V> map, T key, Supplier<V> supplier) {
return map.computeIfAbsent(key, k -> supplier.get());
}
答案 4 :(得分:0)
最好是使用<form>
,因为换句话说,所有字段都不会附加到网址中。在这个原因@BJ Patel
希望在这里的另一个答案中解决这个问题
因此,如果您使用form
,那么只要您在表单中有其他字段,在提交后所有追加并替换为新值,就会在URL中使用<form method="get" action="http://www.example.com/mypage" id="form">
<select id="the_select" name="id">
<option value="123">Go to 123</option>
<option value="456">Go to 456</option>
<option value="789">Go to 789</option>
<select>
</form>
<script type="text/javascript">
$(function(){
$("#the_select").change(function(){
$("#form").submit();
});
});
</script>
。见:
<?
$servername = "localhost";
$username = "root";
$password = "";
try {
$flash = new PDO("mysql:host=$servername;dbname=bazze2", $username, $password);
$flash->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
/* Queries Start */
$proff1s = $flash->query("SELECT topay FROM merge WHERE torecieve = {$_SESSION['id']}");
foreach($proff1s as $proff1) {
$proff2 = $flash->query("UPDATE user SET confirm = 0, tomerge = 'GH', recomit2 = 1, investement = investment2, clearedbalance = topay2 WHERE id = {$proff1['topay']} AND recomit2 = 0");
}
/* Queries End */
} catch (PDOException $e) {
echo "Connection failed: " . $e->getMessage();
}
?>