Javascript 定位文本并基于其存在性执行操作

Javascript 定位文本并基于其存在性执行操作,javascript,jquery,Javascript,Jquery,我正在尝试学习jQuery,但进展缓慢,因为我真的不懂任何JavaScript 我的站点在VB.NET中,我将jQuery代码放在实际的.ascxUserControl和一个单独的文件中(类似于myscripts.js)。这是因为我正在使用webforms,因为我对MVC还不太了解,无法实现它,所以我必须在页面上获取clientID 我想做的是: 从文本框中抓取文本并使其全部小写 从登录信息中获取用户名。我在我的实际页面上这样做: var userName = "<%=Split(Syst

我正在尝试学习jQuery,但进展缓慢,因为我真的不懂任何JavaScript

我的站点在VB.NET中,我将jQuery代码放在实际的
.ascx
UserControl
和一个单独的文件中(类似于
myscripts.js
)。这是因为我正在使用webforms,因为我对MVC还不太了解,无法实现它,所以我必须在页面上获取clientID

我想做的是:

  • 从文本框中抓取文本并使其全部小写
  • 从登录信息中获取用户名。我在我的实际页面上这样做:

    var userName = "<%=Split(System.Web.HttpContext.Current.User.Identity.Name.ToLowerInvariant, '|')%>";
    
    var userName=”“;
    
  • 检查文本中是否有用户名。如果在文本中,我想将变量设置为“false”,否则设置为true


  • 如何做到这一点?

    JQuery的基本原理如下:找到dom元素的列表,并对它们执行操作

    在您的例子中,您应该首先查找作为测试框的dom元素。例如,我们将选择$(“#userName”)。选择器#表示“id”,与名称“userName”一起查找id为“userName”的所有元素。(如果遵循最佳实践,页面上的ID应该是唯一的。)

    一旦你有了这个列表(在本例中是一个元素的列表),你可以问它值是多少。
    $('#userName').val()

    这将获取输入标记的value=”“属性的值


    然后,您可以将其分配给一个变量,并使用标准javascript字符串函数来完成其余的工作

    JQuery的基本原理如下:找到dom元素的列表,并对它们执行操作

    var userName = "username as it comes out of your web app";
    
    // stuff happens
    
    var $myTextbox = $('#ID_of_textbox');
    var userNameIsContained = $myTextbox.val().toLowerCase().indexOf(userName) >= 0;
    
    在您的例子中,您应该首先查找作为测试框的dom元素。例如,我们将选择$(“#userName”)。选择器#表示“id”,与名称“userName”一起查找id为“userName”的所有元素。(如果遵循最佳实践,页面上的ID应该是唯一的。)

    一旦你有了这个列表(在本例中是一个元素的列表),你可以问它值是多少。
    $('#userName').val()

    这将获取输入标记的value=”“属性的值

    然后,您可以将其分配给一个变量,并使用标准javascript字符串函数来完成其余的工作

    var userName = "username as it comes out of your web app";
    
    // stuff happens
    
    var $myTextbox = $('#ID_of_textbox');
    var userNameIsContained = $myTextbox.val().toLowerCase().indexOf(userName) >= 0;
    
    简要说明:

    $('#ID_of_textbox')  // fetches the jQuery object corresponding to your textbox
    .val()               // the jQuery function that gets the textbox value
    .toLowerCase()       // self explanatory
    .indexOf()           // returns the position of a string in a string (or -1)
    

    备选方案(检查文本框值是否等于用户名):

    简要说明:

    $('#ID_of_textbox')  // fetches the jQuery object corresponding to your textbox
    .val()               // the jQuery function that gets the textbox value
    .toLowerCase()       // self explanatory
    .indexOf()           // returns the position of a string in a string (or -1)
    

    备选方案(检查文本框值是否等于用户名):


    我完全不知道它的ASP.NET方面,但就jQuery和Javascript而言

    要获取文本字段的值,请使用jQuery函数:

    要将字符串转换为小写,请使用string方法:

    由于
    val()

    要检查一个字符串是否在另一个字符串中,请使用string方法:


    我完全不知道它的ASP.NET方面,但就jQuery和Javascript而言

    要获取文本字段的值,请使用jQuery函数:

    要将字符串转换为小写,请使用string方法:

    由于
    val()

    要检查一个字符串是否在另一个字符串中,请使用string方法:


    另一件要记住的事情是ASP.NET重命名所有控件ID。要访问JavaScript中的控件,应使用以下内容代替控件ID

    在jQuery中,对于ID为“txtUserName”的文本框,我的选择器是这样的

    $(“#”)

    享受


    Zach

    要记住的另一件事是ASP.NET重命名所有控件ID。要访问JavaScript中的控件,应使用以下内容代替控件ID

    在jQuery中,对于ID为“txtUserName”的文本框,我的选择器是这样的

    $(“#”)

    享受


    扎克

    我想这是问题的一部分。。。我真的不知道标准javascript字符串函数:\n我想这是问题的一部分。。。我真的不知道标准javascript字符串函数:\n这会检查它是否包含用户名还是用户名?文本字段将包含其他文本。。。我想确保用户名在整个字符串中…这将检查textbox值是否为用户名。我会发布一个备选方案来检查它是否包含用户名。这会检查它是否包含用户名还是用户名?文本字段将包含其他文本。。。我想确保用户名在整个字符串中…这将检查textbox值是否为用户名。我将发布另一个选项来检查它是否包含用户名。
    var value = $('#mytextbox').val().toLowerCase();
    
    var needle = 'Hello';
    var haystack = 'Hello World';
    var match = haystack.indexOf(needle); // -1 if no matches, 0 in this case
    
    function checkLogin(userName){
        return $('#mytextbox').val().toLowerCase() == userName
    }
    
    if ($("#textBoxID").val()) != "") { /*Do stuff*/ }