Jquery:如何在脚本下访问div标签?

时间:2016-01-25 13:37:57

标签: javascript jquery html css

我有以下的HTML。我试图在脚本下访问div标签warningMessage。

<script id="notePopup" type="text/x-kendo-template">
    <p class="notePopupMessage">Please enter a note:</p>
    <input class="textNote k-textbox" type="text" maxlength="512" />
    <div class="buttons">
        <button class="add k-button">Add</button>
        <button class="cancel k-button">Cancel</button>
    </div>
    <div id = "warningMessage" style="visibility: hidden" >
    <p id="warningMsg" > Status change action note would not be saved until Save button is selected. </p>
    <div>
</script>

我尝试访问div id warningMessage并通过执行类似$("#warningMessage").show();之类的操作将可见性设置为不隐藏在某些事件上,但它不起作用。 为了访问这个div标记,我们必须做些什么。我怀疑它的行为是这样的,因为它在脚本标签下。

这是小提琴link

2 个答案:

答案 0 :(得分:0)

首先尝试运行kendo脚本,然后运行你提到的jQuery函数来访问该元素?我想当kendo脚本完成后,该模板将被转换为有效的html,你的div将可以访问jQuery。

答案 1 :(得分:-2)

由于您首先设置了visibility:hidden

,因此无效

因此,您要么在事件发生时将其设置为visible,要么首先display:nonediv并将其设为display:block(使用 show()< / em>, fadeIn()等等)针对此特定事件:

这是一个小提琴:https://jsfiddle.net/liototo/jnmyswy4/1/

我将警告div设置为:

#warningMessage{
  display: none;
}

然后jQuery部分如下(仅作为示例):

$('.add').on('click' , function(){

  if ($('.textNote').val())
        $('#warningMessage').show();
   else
    alert('enter something!');

});