Einfache Lösung für den Textbereich des WeChat-Applets
Es gibt kein Bindchange-Ereignis für den Textbereich im WeChat-Applet, daher können Variablen während der Eingabe keine Werte zugewiesen werden.
Obwohl das Bindblur-Ereignis verwendet werden kann, wenn Sie das Bindblur-Ereignis binden und erneut auf die Schaltfläche klicken, wird zuerst das Schaltflächenereignis und dann das Bindblur-Ereignis ausgeführt, sodass der Eingabewert nicht abgerufen werden kann die js-Datei,
Lösung: Kombinieren Sie das From-Formular und die Eingabe in das Textfeld und klicken Sie dann auf die Schaltfläche „Senden“. Zu diesem Zeitpunkt wird zuerst das Textfeld-Ereignis ausgeführt (den Eingabeinhalt des Textfelds abrufen). ), und dann wird die Datenübermittlung ausgeführt. Auf diese Weise wird das Problem gelöst > Nachteile:
Nach diesem Vorgang ist die Funktion fehlerhaft. Beispielsweise kann die Anzahl der in das Textfeld des Benutzers eingegebenen Zeichen nicht sofort ermittelt werden. Wenn es eine bessere Lösung gibt, hoffe ich, dass Sie davon erfahren können!
<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>
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); } }); } })