この記事では主にWeChatアプレットtextareaの詳細な説明と簡単な使い方を紹介します。ここでは実装例のコードと、textareaにbindchangeイベントがなく、Friendsの入力中に値を変数に代入できない問題を解決する方法を添付します。
WeChatアプレットtextareaの簡単な解決策
WeChatアプレットにはtextareaのbindchangeイベントがないため、入力中に変数に値を割り当てることができません。
bindblurイベントを利用することはできますが、bindblurイベントをバインドして再度ボタンをクリックすると、先にボタンイベントが実行されてからbindblurイベントが実行されるため、jsファイルでは入力値が取得できません。
解決策: fromフォームと組み合わせると、テキストエリアのテキストボックスに入力した後、送信ボタンをクリックすると、最初にテキストエリアイベントが実行され(テキストボックスの入力内容を取得)、次にデータが実行されます。このようにして、問題は解決されます
wxml ファイルコード:
<form bindsubmit="evaSubmit"> <textarea name="evaContent" maxlength="500" value="{{evaContent}}" class="weui-textarea" placeholder="填写内容(12-500字)"bindblur="charChange" /> <button formType="submit" disabled="{{subdisabled}}" class="weui-btn mini-btn" type="primary" size="mini">提交</button> </form>
js ファイルコード:
var app = getApp(); Page({ data:{ evaContent : '' }, onLoad:function(){ }, onReady:function(){ // 页面渲染完成 }, onShow:function(){ // 页面显示 }, onHide:function(){ // 页面隐藏 }, onUnload:function(){ // 页面关闭 }, //事件 textBlur: function(e){ if(e.detail&&e.detail.value.length>0){ if(e.detail.value.length<12||e.detail.value.length>500){ //app.func.showToast('内容为12-500个字符','loading',1200); }else{ this.setData({ evaContent : e.detail.value }); } }else{ this.setData({ evaContent : '' }); evaData.evaContent = ''; app.func.showToast('请输入投诉内容','loading',1200); } }, //提交事件 evaSubmit:function(eee){ var that = this; //提交(自定义的get方法) app.func.req('http://localhost:1111/ffeva/complaint?content=''+this.data.evaContent),get,function(res){ console.log(res); if(res.result==='1'){ //跳转到首页 app.func.showToast('提交成功','loading',1200); }else{ app.func.showToast('提交失败','loading',1200); } }); } })
欠点:
この後操作すると機能が故障します。たとえば、ユーザーのテキスト ボックスに入力された文字数をすぐに取得することはできません。より良い解決策があれば、それを学習していただければ幸いです。
以上がこの記事の全内容です。その他の関連コンテンツについては、PHP 中国語 Web サイトをご覧ください。
関連する推奨事項:
WeChat ミニ プログラム
プルアップ読み込みとプルダウンリフレッシュを実装したスクロールビューの例
以上がWeChatアプレットのテキストエリアの使用方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。