GSMEthesis commited on
Commit
7879c76
·
verified ·
1 Parent(s): bc0f1ba

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +9 -3
app.py CHANGED
@@ -738,7 +738,6 @@ h3 {
738
  """, unsafe_allow_html=True)
739
 
740
  # ========== توابع اصلی ==========
741
-
742
  def enhanced_likert_scale(question_data):
743
  """لیکرت اسکیل با خط نقطه‌دار HTML و ورودی عددی"""
744
  question = question_data["question"]
@@ -829,16 +828,23 @@ def enhanced_likert_scale(question_data):
829
  components.html(scale_html, height=60)
830
 
831
  # ورودی عددی
 
 
 
 
 
 
 
832
  value = st.number_input(
833
  "مقدار را وارد کنید (از 1 تا 7):",
834
  min_value=1,
835
  max_value=scale,
836
- value=st.session_state.get(key) if st.session_state.get(key) is not None else 1, # مقدار پیش‌فرض 1
837
  step=1,
838
  key=f"{key}_input",
839
  placeholder="لطفاً از 1 (کمترین) تا 7 (بیشترین) انتخاب کنید",
840
  format="%d",
841
- on_change=lambda: st.session_state.update({key: st.session_state[f"{key}_input"]})
842
  )
843
 
844
  # خط جداکننده بنفش
 
738
  """, unsafe_allow_html=True)
739
 
740
  # ========== توابع اصلی ==========
 
741
  def enhanced_likert_scale(question_data):
742
  """لیکرت اسکیل با خط نقطه‌دار HTML و ورودی عددی"""
743
  question = question_data["question"]
 
828
  components.html(scale_html, height=60)
829
 
830
  # ورودی عددی
831
+ def update_session_state():
832
+ input_value = st.session_state.get(f"{key}_input")
833
+ if input_value is not None and 1 <= input_value <= scale:
834
+ st.session_state[key] = input_value
835
+ else:
836
+ st.session_state[key] = None
837
+
838
  value = st.number_input(
839
  "مقدار را وارد کنید (از 1 تا 7):",
840
  min_value=1,
841
  max_value=scale,
842
+ value=st.session_state.get(key) if st.session_state.get(key) is not None else None,
843
  step=1,
844
  key=f"{key}_input",
845
  placeholder="لطفاً از 1 (کمترین) تا 7 (بیشترین) انتخاب کنید",
846
  format="%d",
847
+ on_change=update_session_state
848
  )
849
 
850
  # خط جداکننده بنفش