FineUI 官方论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

本论坛已关闭(禁止注册、发帖和回复)
请移步 三石和他的朋友们

FineUI首页 WebForms - MVC & Core - JavaScript 常见问题 - QQ群 - 十周年征文活动

FineUI(开源版) 下载源代码 - 下载空项目 - 获取ExtJS - 文档 在线示例 - 版本更新 - 捐赠作者 - 教程

升级到 ASP.NET Core 3.1,快、快、快! 全新ASP.NET Core,比WebForms还简单! 欢迎加入【三石和他的朋友们】(基础版下载)

搜索
查看: 1535|回复: 3
打印 上一主题 下一主题

文本框获得焦点触发焦点事件,如何实现,谢了

[复制链接]
跳转到指定楼层
楼主
发表于 2013-4-2 02:56:32 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 做了才会想好 于 2013-4-2 03:02 编辑

文本框有类似onFocus=""这样的事件吗
要在后台执行的,
沙发
发表于 2013-4-2 04:20:15 来自手机 | 只看该作者
需要写js,思路是js捕获事件,然后调__doPostback函数
板凳
 楼主| 发表于 2013-4-2 14:14:56 | 只看该作者
本帖最后由 做了才会想好 于 2013-4-2 14:27 编辑


<ext:TextBox ID="DataNO" runat="server" Label="字段编码"   MaxLength="5" MinLength="5"  Required="true"
                                ShowRedStar="true" Width="320"    ClientIDMode="Static">
                            </ext:TextBox>

调用不了
  function autoGetDataNo(DataNO) {
                        __doPostBack(DataNO, DataNO);

        }

        function setTextBoxFocus(DataNo) {
           document.getElementById(DataNo).setAttribute('onfocus', autoGetDataNo(DataNo));
   
        }
<body  onload="setTextBoxFocus('DataNo');">  调用后,出错,提示对象为NULL,无法识别setAttribute属性
地板
 楼主| 发表于 2013-4-2 22:14:29 | 只看该作者
这是我修改的代码:
前台页面:
<script language="javascript" type="text/javascript">
        function autoGetDataNo(dataNOID) {

            __doPostBack(dataNOID, 'DataNO');

        }

      
    </script>
<ext:TextBox ID="DataNO" runat="server" Label="字段编码" AutoPostBack="true"   MaxLength="6"
                                MinLength="6"  Required="true"
                                ShowRedStar="true" Width="320"    ClientIDMode="Static"
                                MaxLengthMessage="只能输入6位英文数字编码" MinLengthMessage="只能输入6位英文数字编码"  >
                            </ext:TextBox>




    <script type="text/javascript">

        function onReady() {
            var dataNOID = '<%= DataNO.ClientID %>';
            var dataNO = Ext.getCmp(dataNOID);
            dataNO.addListener('onFocus', autoGetDataNo(dataNOID));
            dataNO.addListener('onKeyUp', autoGetDataNo(dataNOID));
        }
        </script>

.cs代码:

if (!IsPostBack)
            {



else
            {
                Response.Write(Request.Form["__EVENTTARGET"]);
                if (Request.Form["__EVENTTARGET"] == DataNO.ClientID && Request.Form["__EVENTARGUMENT"] == "DataNO")
                {
                                     common cm = new common();
                    DataNO.Text = cm.DataBasicKnowledgeStoreAutoNo();
                    DataNO.Focus(true);
                }
            }
只加载玩野页面后触发了onfocus事件,获取到了cm.DataBasicKnowledgeStoreAutoNo()的值,后面的触发就再也没有效果,怎么回事,能给看看吗
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|FineUI 官方论坛 ( 皖ICP备2021006167号-1 )

GMT+8, 2024-11-29 04:27 , Processed in 0.044157 second(s), 18 queries , Gzip On.

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表