javascript - Onfocus 文本框用户名放入文本框名字值和文本框姓氏值分割

标签 javascript jquery asp.net webforms textbox

一开始我有输入字段,它与 jquery 代码配合得很好,现在我将输入字段更改为 asp.net 文本框,因为我进行了扩展,因此它将数据插入数据库中。所以现在我需要弄清楚它如何与 asp:textboxes 一起使用。

我有 3 个 ASP.NET 文本框,分别用于名字、姓氏和用户名

<asp:TextBox ID="TextBox_firstname" runat="server" name="firstname></asp:TextBox>

<asp:TextBox ID="TextBox_lastname" runat="server" name="lastname"></asp:TextBox>

<asp:TextBox ID="TextBox_username" runat="server" name="username"></asp:TextBox>

我不认为这是因为我有错误的 jquery 文件 我使用的 jquery 文件是这样的:

<script src="Scripts/jquery-1.9.1.js"></script>

$("#<%=TextBox_username.ClientID%>").focus(function () {
    var firstname = $("#<%=TextBox_firstname.ClientID%>").val();
    var lastname = $("#<%=TextBox_lastname.ClientID%>").val();
    if (firstname && lastname && !this.value) {
        this.value = firstname + "." + lastname;
    }
} );

我研究了如何使用jquery选择器获取Asp.net控件ID
("#<%=TextBox_username.ClientID%>")
我复制了给定的格式,所以没有错误。 但它也不起作用。
如果出现问题,我不知道如何测试。如果有人能解释我如何确定这是否有效,我会很高兴。但如果您能看到解决方案就更好了。

编辑:我没有使用母版页 - 内容占位符,我只使用默认的网络表单

最佳答案

运算符(operator)<%=仅当包含该文件的文件以 .aspx

结尾时才会运行

扩展名为 .js 的文件不会被 ASP.NET 引擎解析,因此与 <%=TextBox_firstname.ClientID%> 的代码相同。将在浏览器中呈现在 .js 文件中。 ASP.NET 不会处理 .js 文件并将此代码转换为字段的实际 ID (TextBox_firstname)

Mate 的示例之所以有效,是因为他/她将 JavaScript 代码直接放入 .aspx 文件中。我怀疑您的 js 代码位于 .js 文件中,而不是直接位于 .aspx 文件中?

克雷格

关于javascript - Onfocus 文本框用户名放入文本框名字值和文本框姓氏值分割,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30418754/

相关文章:

javascript - 计算字符串中括号内的数字

javascript - Backbone 不会触发简单模型的事件

javascript - 从 <audio> HTML 中隐藏进度条

javascript - 用 JQuery 替换 $j

javascript - 如何仅引用当前表单中的字段? -- JQuery 初学者

asp.net - SSL 重定向/重写

c# - 如果返回值为 null 或为空,则显示一些默认文本

javascript - 使用 InnerHTML 解析 IMG 标签 Javascript

php - jQuery POST 表单数据行

javascript - 无法为输入设置 null 的属性 'value'