Rss & SiteMap

Foxtable(狐表) http://www.foxtable.com

新一代数据库软件,完美融合Access、Foxpro、Excel、vb.net之优势,人人都能掌握的快速软件开发工具!
共6 条记录, 每页显示 10 条, 页签: [1]
[浏览完整版]

标题:自动隐藏表单

1楼
ycs5801 发表于:2024/3/23 11:44:00
With wb.AddInputGroup("form2", "ipg1", "")  
    With wb.AddInputGroup("form2", "ipg256", "信息录入")    
        .AddInput("信息主题", "信息主题", "Text")
        .Addselect("转让方式", "转让方式", "[赠送]|出售")
        .AddInput("期望价格", "期望价格", "number")      
    End With
end with
wb.AppendHTML("<script src='./lib/test.js'></script>") '引入脚本文件

js代码:
// 获取A表单和B表单的引用
var formA = document.getElementById("转让方式");
var formB = document.getElementById("期望价格");

// 为A表单添加监听事件
formA.addEventListener("input", function() {
  // 获取A表单的输入值
  var value = formA.value.trim();

  // 判断A表单的输入值,并控制B表单的显示状态
  if (value === "出售") {
    formB.style.display = "block"; // 显示B表单
  } else if (value === "赠送") {
    formB.style.display = "none"; // 隐藏B表单
  }
  
  });

想实现:转让方式如果选择出售则显示期望价格栏,如果是赠送则隐藏期望价格栏。现在选择后无反应。
2楼
有点蓝 发表于:2024/3/23 12:03:00
给Addselect绑定onchange事件
3楼
ycs5801 发表于:2024/3/23 16:08:00
 已经绑定: .Addselect("转让方式", "转让方式", "[赠送]|出售").Attribute = "onc hange='dtauto()'"

function dtauto(){
// 获取A表单和B表单的引用
var formA = document.getElementById("转让方式");
var formB = document.getElementById("期望价格");
console.log("auto");
// 为A表单添加监听事件
formA.addEventListener("input", function() {
  // 获取A表单的输入值
  var value = formA.value.trim();

  // 判断A表单的输入值,并控制B表单的显示状态
  if (value === "出售") {
    formB.style.display = "block"; // 显示B表单
  } else if (value === "赠送") {
    formB.style.display = "none"; // 隐藏B表单
  }

  });
}

测试显示控制台已输出“auto”,js中的value值也是正常,但是无法隐藏b表单
[此贴子已经被作者于2024/3/23 16:09:03编辑过]
4楼
有点蓝 发表于:2024/3/23 16:39:00
1、去掉:formA.addEventListener("input", function() {
2、判断select控件选中的是什么值参考:https://www.baidu.com/s?wd=js%20%E5%88%A4%E6%96%ADselect%E9%80%89%E4%B8%AD%E7%9A%84%E5%80%BC
5楼
ycs5801 发表于:2024/3/23 18:57:00
function dtauto(){
    var formA = document.getElementById("期望价格");

var selectElement = document.getElementById('转让方式');
 console.log(selectElement);
// 方法1: 使用selectedIndex
var selectedIndex = selectElement.selectedIndex;
var selectedValue = selectElement.options[selectedIndex].value;
console.log("选中的值是: " + selectedValue);
if (selectedValue === "出售") {
    formA.style.display = "block"; // 显示B表单
  } else if (selectedValue === "赠送") {
    formA.style.display = 'none'; // 隐藏B表单

  }
}

现在js中改成这样,效果是选中出售之后可以输入期望价格,选中赠送后,输入价格的地方已经隐藏,但是“期望价格”这4个字还在,这4个字能隐藏吗?
[此贴子已经被作者于2024/3/23 22:48:04编辑过]
6楼
ycs5801 发表于:2024/3/23 23:07:00
自己搞定了,暂时无问题。
共6 条记录, 每页显示 10 条, 页签: [1]

Copyright © 2000 - 2018 foxtable.com Tel: 4000-810-820 粤ICP备11091905号

Powered By Dvbbs Version 8.3.0
Processed in .03320 s, 2 queries.