Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/82.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 更改动态表中单击的最后一行的边框(使用<;ul>;)_Javascript_Jquery_Html_Css - Fatal编程技术网

Javascript 更改动态表中单击的最后一行的边框(使用<;ul>;)

Javascript 更改动态表中单击的最后一行的边框(使用<;ul>;),javascript,jquery,html,css,Javascript,Jquery,Html,Css,这是我的小提琴: 如您所见,当您单击行时,会出现一个小边框。我基本上只想单击最后一行上的边框更改,但我不知道要使用什么事件使我单击的前一行没有边框。最好的方法是什么 另外,我不能使用任何类型的“losefocus”或类似的,因为我的页面上有很多表格,在这个特定表格上单击的最后一行需要保持用户可见。这和许多组radiobox一样 代码如下: <ul class="UploadTable" data-role="listview" data-inset="true" data-icon="fa

这是我的小提琴:

如您所见,当您单击行时,会出现一个小边框。我基本上只想单击最后一行上的边框更改,但我不知道要使用什么事件使我单击的前一行没有边框。最好的方法是什么

另外,我不能使用任何类型的“losefocus”或类似的,因为我的页面上有很多表格,在这个特定表格上单击的最后一行需要保持用户可见。这和许多组radiobox一样

代码如下:

<ul class="UploadTable" data-role="listview" data-inset="true" data-icon="false" style="min-width:350px">
    <li style="text-align: center !important">
        <label>UPLOAD SCHEDULE</label>
    </li>
    <li data-role="list-divider">
        <div class="ui-grid-b">
            <div class="ui-block-a" style="width:33%">Header 1</div>
            <div class="ui-block-b" style="width:34%">Header 2</div>
            <div class="ui-block-c" style="width:33%">Header 3</div>
        </div>
    </li>
    <li id="addedTargetRow" class="fitting">
        <a href="#" onclick="this.style.border='2px solid #000099;'">
            <div class="ui-grid-b">
                <div id="THW_ID" class="ui-block-a" style="width:33%">info1</div>
                <div id="POS" class="ui-block-b" style="width:34%">info2</div>
                <div id="IP" class="ui-block-c" style="width:33%">Info3</div>
            </div>                                                                                                                   </a>                                                                                                                     </li>
    <li id="addedTargetRow" class="fitting">
        <a href="#" onclick="this.style.border='2px solid #000099;'">
            <div class="ui-grid-b">
                <div id="THW_ID" class="ui-block-a" style="width:33%">info1</div>
                <div id="POS" class="ui-block-b" style="width:34%">info2</div>
                <div id="IP" class="ui-block-c" style="width:33%">Info3</div>
            </div>                                                                                                                   </a>                                                                                                                     </li>
    <li id="addedTargetRow" class="fitting">
        <a href="#" onclick="this.style.border='2px solid #000099;'">
            <div class="ui-grid-b">
                <div id="THW_ID" class="ui-block-a" style="width:33%">info1</div>
                <div id="POS" class="ui-block-b" style="width:34%">info2</div>
                <div id="IP" class="ui-block-c" style="width:33%">Info3</div>
            </div>                                                                         </a>
    </li>
</ul>
  • 上传时间表
  • 标题1 标题2 标题3

您可以使用
的HTML状态:focus
和JS“blur”事件,使用HTML属性
onblur
连接。因此,您需要将
onclick
修改为
this.style.border='2px solid#000099';这是focus()
并将
onblur=“this.style.border='none';”
添加到同一链接。

您可以使用
的HTML状态:focus
和JS“blur”事件,使用HTML属性
onblur
钩住它。因此,您需要将
onclick
修改为
this.style.border='2px solid#000099';这是focus()
并将
onblur=“this.style.border='none';”
添加到同一链接。

您可以使用
的HTML状态:focus
和JS“blur”事件,使用HTML属性
onblur
钩住它。因此,您需要将
onclick
修改为
this.style.border='2px solid#000099';这是focus()
并将
onblur=“this.style.border='none';”
添加到同一链接。

您可以使用
的HTML状态:focus
和JS“blur”事件,使用HTML属性
onblur
钩住它。因此,您需要将
onclick
修改为
this.style.border='2px solid#000099';这是focus()
并将
onblur=“this.style.border='none';”
添加到同一链接

  • 你有重复的身份证
  • 为什么要在每个锚点上单击
    onclick
    。(在演示中删除)
  • 使用这个JS

    $(document).on('click', '.fitting', function () {
        $('.fitting').removeAttr('style');    // removes all previous borders
        $(this).css('border', '2px solid #000099')// add border to current element
    })
    

    警告:由于样式属性中只有边框,因此删除它不会产生任何影响,假设您有其他样式和边框,请不要使用
    。removeAttr(“样式”).css('border','none')
    如下

    $(document).on('click', '.fitting', function () {
        $('.fitting').css('border', 'none')// removes all previous borders
        $(this).css('border', '2px solid #000099')// add border to current element
    })
    
    更新:

    如果有多个表,则使用this
    $(this).parents('table').find('.fitting').css('border','none')
    这将查找单击该行的表的
    fitting
    元素,不包括DOM中其他表中的相同元素

  • 你有重复的身份证
  • 为什么要在每个锚点上单击
    onclick
    。(在演示中删除)
  • 使用这个JS

    $(document).on('click', '.fitting', function () {
        $('.fitting').removeAttr('style');    // removes all previous borders
        $(this).css('border', '2px solid #000099')// add border to current element
    })
    

    警告:由于样式属性中只有边框,因此删除它不会产生任何影响,假设您有其他样式和边框,请不要使用
    。removeAttr(“样式”).css('border','none')
    如下

    $(document).on('click', '.fitting', function () {
        $('.fitting').css('border', 'none')// removes all previous borders
        $(this).css('border', '2px solid #000099')// add border to current element
    })
    
    更新:

    如果有多个表,则使用this
    $(this).parents('table').find('.fitting').css('border','none')
    这将查找单击该行的表的
    fitting
    元素,不包括DOM中其他表中的相同元素

  • 你有重复的身份证
  • 为什么要在每个锚点上单击
    onclick
    。(在演示中删除)
  • 使用这个JS

    $(document).on('click', '.fitting', function () {
        $('.fitting').removeAttr('style');    // removes all previous borders
        $(this).css('border', '2px solid #000099')// add border to current element
    })
    

    警告:由于样式属性中只有边框,因此删除它不会产生任何影响,假设您有其他样式和边框,请不要使用
    。removeAttr(“样式”).css('border','none')
    如下

    $(document).on('click', '.fitting', function () {
        $('.fitting').css('border', 'none')// removes all previous borders
        $(this).css('border', '2px solid #000099')// add border to current element
    })
    
    更新:

    如果有多个表,则使用this
    $(this).parents('table').find('.fitting').css('border','none')
    这将查找单击该行的表的
    fitting
    元素,不包括DOM中其他表中的相同元素

  • 你有重复的身份证
  • 为什么要在每个锚点上单击
    onclick
    。(在演示中删除)
  • 使用这个JS

    $(document).on('click', '.fitting', function () {
        $('.fitting').removeAttr('style');    // removes all previous borders
        $(this).css('border', '2px solid #000099')// add border to current element
    })
    

    警告:由于样式属性中只有边框,因此删除它不会产生任何影响,假设您有其他样式和边框,请不要使用
    。removeAttr(“样式”).css('border','none')
    如下

    $(document).on('click', '.fitting', function () {
        $('.fitting').css('border', 'none')// removes all previous borders
        $(this).css('border', '2px solid #000099')// add border to current element
    })
    
    更新:

    如果有多个表,则使用this
    $(this).parents('table').find('.fitting').css('border','none')

    这将查找单击该行的表的
    fitting
    元素,排除DOM中其他表中的相同元素。

    注意:@J Santosh的回答将切换所有表中的所有链接,并且提到的页面上有多个表的问题都将丢失其突出显示

    将onclick链接放在列表项上会使其变得凌乱,并且不起作用(我将在下面介绍)。要保持在您正在寻找的解决方案中,请执行以下操作:

    onclick="var links=this.parentNode.parentNode.querySelectorAll('.fitting a') || [], i = links.length;  for (;!!i;i--) { links[i].style.border='none'; } this.style.border='2px solid #000099';"
    
    这将确保仅从该表中删除高亮显示的行

    然而,这方面有一些非常令人担忧的事情