こんにちは。
実際にサンプルを作ってみたわけではないですが、以下の(1)(2)を参考にすると、
とりあえず、それらしく動きそうなものを作れるのでは?と思った参考ページを
回答します。
(1) ボタンをクリックしたときに select を開くサンプル
- Open select programmatically
http://fiddlesalad.com/javascript/open-select-programmatically/
上記は JQuery を使っていますが、同じことをReactでやればいいという目処がつきます。
※ちなみに私の使用しているブラウザ(Mac版Chrome 67)では、開くのと閉じるのがうまく動いたのは
「Generic」ボタンのみでした。
(2) Reactである要素にfocusするサンプル
上記 (1)の「Generic」ボタンのクリックでやっている
javascript
1$("#c").on("click", function(evt) {
2 if ($("#s").attr("size") == 6) {
3 $("#s").attr("size", 1);
4 } else {
5 $("#s").attr("size", 6);
6 $("#s").focus();
7 }
をReactでやってみるとすれば、上記は、select のsize属性に1だったり、6だったりの値を
設定することで開閉しており、これについては Reactではselect がrenderされるときに
size属性を適切に与えればよいとして、もう一点、focus() でフォーカスを当てるほうは、
以下が参考になります。
- React set focus on input after render
https://stackoverflow.com/questions/28889826/
冒頭書いたように、試しに作ってみたわけではないので、「これで出来ました」とは
言えないのですが、参考になれば幸いです。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/06/28 06:03
2018/06/28 09:10 編集
2018/06/28 16:38