Member 10549697 Ответов: 2

Как добавить cssclass в динамическое текстовое поле, созданное javascript


$("#btnAdd").bind("click", function () {
                 var div = $("<div />");
                 div.html(GetDynamicTextBox("", ""));
                 $('ContactName').addClass('form-control has-ns');
                 
                 $("#TextBoxContainer").append(div);
                 return false;
             });
             $("body").on("click", ".remove", function () {
                 $(this).closest("div").remove();

             });
         });
         function GetDynamicTextBox(valuename, valueemail) {


             return '<input name = "ContactName" type="text" value = "' + valuename + '" /> ' + '<input name = "ContactEmail" type="text" value = "' + valueemail + '" /> ' +
           '<input type="button" value="Remove" class="remove" />'


Что я уже пробовал:

$('Контактантами').форма управления-добавление('и-Н');
к этой строке я хочу добавить css-класс, но он не отображается в моем текстовом поле.

F-ES Sitecore

Удобный способ отладки этих проблем-изучить "длину" вещей, которые возвращаются из ваших поисковых запросов

предупреждение ($('Контактантами').длина);
$('Контактантами').форма управления-добавление('и-Н');

Длина 0 означает, что jquery не может найти нужный компонент, поэтому применяет класс ни к чему. Как уже говорили другие, Ваш селектор не был действительным для поиска вашего ящика, $('ContactName') находит тег под названием contactname, так что

< ContactName/>>

2 Ответов

Рейтинг:
4

SRS(The Coder)

Вот мой фрагмент HTML для вашей справки, написанный на странице aspx, которая работает так, как вы ожидаете:-

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title></title>
    <style type="text/css">
        .form-control{
            border-color:red;
            border-width:2px;
            height:50px;
            width:200px;
        }
        .has-ns{
            background-color:green;
        }
    </style>
    <script src="Scripts/jquery-1.10.2.js"></script>
    <script type="text/javascript">
        $(function () {
            $("#btnAdd").bind("click", function () {
                var div = "<div>" + GetDynamicTextBox("SmrutiRanjan", "smruti.sahoo@gmail.com") + "</div>";
                $("#TextBoxContainer").append(div);
                $('input[name=ContactName]').addClass('form-control has-ns');
                return false;
            });

            $("body").on("click", ".remove", function () {
                $(this).closest("div").remove();

            });
        });        

        function GetDynamicTextBox(valuename, valueemail) {
            return '<input name="ContactName" type="text" value="' + valuename + '" /> ' + '<input name="ContactEmail" type="text" value="' + valueemail + '" /> ' +
            '<input type="button" value="Remove" class="remove" />';
        }

    </script>
</head>
<body>
    <form id="form1" runat="server">
      <div id="TextBoxContainer"></div>
      <input type="button" id="btnAdd" value="Add" />
    </form>
</body>
</html>


Надеюсь, что это определенно поможет вам.


Member 10549697

yes.it работает.спасибо за ответ

Рейтинг:
12

Karthik_Mahalingam

использовать Селектор Атрибутов Равен [^] для выбора элементов управления с именем вместо идентификатора

$("input[name='ContactName']").addClass('form-control has-ns');


Member 10549697

Благодарю вас, сэр.это помогло.теперь его работы

Karthik_Mahalingam

крутой