嗨问题很简单。
<select name="justanumber">
<option value="1" selected="selected">1</option>
<option value="2"></option>
</select>
当选择的值被更改时,我必须做一个表格发布。 但问题是在没有javascript的情况下这样做。
我不确定是否可以这样做,我归档的最佳结果是使用标签提交表单。
答案 0 :(得分:4)
不,如果不使用客户端脚本,这是不可能的。
我建议您使用脚本来使其正常工作,并为不能使用脚本的人提供提交按钮作为备份。
答案 1 :(得分:3)
不,这样的事情没有自动提交属性 - 但是,有一种解决方法:
#jsOn .Submit {
display: none;
}
<form id="my_form" action="">
<select id="justanumber" name="justanumber">
<option value="1" selected="selected">1</option>
<option value="2"></option>
</select>
<input type="submit" value="Go!" class="Submit" />
</form>
var visible_root = document.getElementsByTagName("body");
while (visible_root.length < 1) {
continue;
}
visible_root = visible_root[0];
visible_root.id = "jsOn";
document.getElementById("justanumber").onchange = function() {
document.getElementById("my_form").submit();
};
当没有JavaScript的人到达您的网站时,他们会看到一个提交按钮。当启用了JavaScript的用户到达您的网站时,将隐藏提交按钮,并将onchange
元素添加到select
元素。 (或者你可以添加一个事件监听器,如果你有一个JavaScript库可以为你规范化所有事件。)
答案 2 :(得分:1)
如果没有js,我不相信这是可能的。一种显而易见的方法是将提交按钮设置为选项的值(例如,<option><input type="submit"></option>
)。不幸的是,浏览器会吠叫和呻吟,在select元素之后附加input元素。如果select确定应用程序流,请考虑使用另一个其他UI元素(例如,按钮,链接等)。
答案 3 :(得分:1)
这是答案。 不幸的是,这是不可能的。
答案 4 :(得分:0)
<form action="aaa.php" method="post" name="autosubmit_select">
<select name="justanumber" onChange="document.autosubmit_select.submit();">
<option value="1" selected="selected">1</option>
<option value="2"></option>
</select>
</form>
答案 5 :(得分:0)
同意你必须使用javascript来实现这个
请参阅此帖子How to submit form on change of dropdown list?
如果您担心用户没有启用javascript,那么我会建议您在链接中的帖子中给出示例
<noscript>This form requires that you have javascript enabled to work properly please enable javascript in your browser.</noscript>
或沿着这些方向的东西
除此之外,不使用javascript
是不可能(目前)这样做的答案 6 :(得分:0)
在JS未启用时使用submit_button提交。 如果启用了JS,则使用JavaScript隐藏按钮。亚马逊就这样做了。!
禁用JS并查看右上角的sortby部分。