どのように 'onblur'や同様のイベントをサポートすることができますか?

asp.net-core blazor c#

質問

私は次のようなことをしたい:

<td contenteditable=true @onblur(async (txt) => { ... })>

しかし、現在はそれが唯一のようだ@onchangeサポートされており、ときに実際に発生しませんcontenteditable内容が変更されます。私は、メソッドがC#ハンドラを呼び出すJSハンドラを持つことになるだろうと思うが、コミュニケーションがこのように進むかどうかはわかりません。最適なオプションは、 'save to DB'のonclickハンドラを持つボタンを持つだけですか?または、より良い選択肢がありますか?

受け入れられた回答

あなたは正しいです、Blazorの現在のバージョンはonblurイベントをサポートしていません。 onclick、onchange、およびonkeypressイベントのみがサポートされています。私は、 このプルリクエストがより多くのイベントへのアクセスを許可し、0.2.0リリースに含まれるべきだと考えています。

このルートに行きたい場合は、JavaScriptからC#メソッドを呼び出すことができます。 このブログ記事の例を参照してください。しかし、次の週にリリースされるはずの0.2.0リリースを待つ価値があるかもしれません。


人気のある回答

Blazorで利用可能なイベントのチートシートを作成する必要性を感じました.... onblurが追加されたので、ここに残すことに関連があるようです。


フォーカスイベント(UIFocusEventArgs)

onfocus        
onblur
onfocusin
onfocusout

マウスイベント(UIMouseEventArgs)

onmouseover          
onmouseout    
onmousemove   
onmousedown   
onmouseup     
onclick       
ondblclick    
oncontextmenu 

https://github.com/aspnet/Blazor/blob/master/test/testapps/BasicTestApp/MouseEventComponent.cshtml

マウスホイールイベント(UIWheelEventArgs)

onwheel       
onmousewheel  

ドラッグイベント(UIDragEventArgs)

ondrag      
ondragend   
ondragenter 
ondragleave 
ondragover  
ondragstart 
ondrop      

キーボードイベント(UIKeyboardEventArgs)

onkeydown    
onkeyup      
onkeypress   

https://github.com/aspnet/Blazor/blob/master/test/testapps/BasicTestApp/KeyPressEventComponent.cshtml

入力イベント(UIEventArgs)

oninput        
oninvalid       
onreset       
onselect        
onselectstart   
onselectionchange
onsubmit     

onchange        UIChangeEventArgs

クリップボード(UIClipboardEventArgs)

oncopy
oncut
onpaste

onbeforecopy        UIEventArgs
onbeforecut       
onbeforepaste     

タッチイベント(UITouchEventArgs)

ontouchcancel
ontouchend 
ontouchmove
ontouchstart
ontouchenter
ontouchleave

https://github.com/aspnet/Blazor/blob/master/test/testapps/BasicTestApp/TouchEventComponent.cshtml

ポインタイベント(UIPointerEventArgs)

gotpointercapture
lostpointercapture
pointercancel    
pointerdown    
pointerenter    
pointerleave    
pointermove      
pointerout       
pointerover     
pointerup        

メディアイベント(UIEventArgs)

oncanplay      
oncanplaythrough
oncuechange
ondurationchange
onemptied   
onpause       
onplay     
onplaying      
onratechange 
onseeked      
onseeking      
onstalled      
onstop       
onsuspend      
ontimeupdate   
onvolumechange  
onwaiting       

進行状況イベント(UIProgressEventArgs)

onloadstart
ontimeout
onabort
onload
onloadend
onprogress

onerror        (UIErrorEventArgs)

一般イベント(UIEventArgs)

onactivate      
onbeforeactivate   
onbeforedeactivate 
ondeactivate       
onended       
onfullscreenchange 
onfullscreenerror  
onloadeddata       
onloadedmetadata   
onpointerlockchange
onpointerlockerror 
onreadystatechange 
onscroll      


ライセンスを受けた: CC-BY-SA with attribution
所属していない Stack Overflow
ライセンスを受けた: CC-BY-SA with attribution
所属していない Stack Overflow