小编ak8*_*k85的帖子

正则表达式删除字符后的所有内容,包括该字符

我想完成一个正则表达式,它匹配包括该字符在内的某个字符之后的所有内容。例如,如果我的字符串是

"12:23:34:45:56"

我想回来

"12:23:34:45"

:删除最后一个之后的所有内容,包括:

我尝试了以下。

var str1 = "12:23:34:45:56";
str1 = str1.replace(/[^:]*$/,"");
alert(str1);
Run Code Online (Sandbox Code Playgroud)

哪个返回"12:23:34:45:"(需要摆脱最后一个:)

我也试过

var str2 = "12:23:34:45:56";
str2 = str2.replace(/:.*$/,"");
alert(str2);
Run Code Online (Sandbox Code Playgroud)

它返回"12"与大部分字符串的匹配

我怎样才能在这里得到我想要的东西?

javascript regex

1
推荐指数
1
解决办法
602
查看次数

Jquery - 处理悬停的更好方法

我有一个列表,默认只显示顶级.当您悬停时,它会显示子菜单项.这按预期工作,但它始终保持一个菜单打开,因为上课仍然在最后一个项目上.我觉得必须有更好的方法来做到这一点,但我在网站上看到的其他例子似乎并不像我追求的那样?见下面的例子.

http://jsfiddle.net/aaronk85/6PfKb/

html css jquery

0
推荐指数
1
解决办法
64
查看次数

通过表单将多行插入数据库

在 php 中,我可以使用以下命令将多行添加到我的数据库中

$sql = 'INSERT INTO 'tablename' ('column1', 'column2') VALUES
    ('data1', 'data2'),
    ('data3', 'data4'),
    ('data5', 'data6'),
    ('data7', 'data8');
';
Run Code Online (Sandbox Code Playgroud)

但是我不知道如何创建一个允许我将多行添加到数据库中的表单。

在过去,当我只想一次添加一行时,我已经能够在我的表单中做这样的事情。

<input type="text" name="name" value="">
Run Code Online (Sandbox Code Playgroud)

和下面在我的php

$_POST['name']
Run Code Online (Sandbox Code Playgroud)

但是当您要插入多行时,这不起作用。有人可以在这里指出我正确的方向吗?

php mysql

0
推荐指数
1
解决办法
4977
查看次数

替换字符串中匹配模式的最后一个实例

我想只显示 - 之后的值 - 如下所示.

    $(function(){
        var aa = "ABCDEFGHIJKLMNOPQRS-TUVEXYZ";
        var bb = aa.substring(aa.indexOf("-") + 1);
        $('#one').text(bb);
    });

    $(function(){
        var cc = "ABC-DEFGHIJ-KLMNOPQRS-TUVEXYZ";
        var dd = cc.substring(cc.indexOf("-") + 1);
        $('#two').text(dd);
    });
Run Code Online (Sandbox Code Playgroud)

这个输出

<div id="one">TUVEXYZ</div>
<div id="two">DEFGHIJ-KLMNOPQRS-TUVEXYZ</div>
Run Code Online (Sandbox Code Playgroud)

第一个工作,因为只有一个破折号,但是当有多个破折号时,我的代码不起作用,因为它只是寻找第一个 - .我怎么去寻找最后一个?

例如,如果我的代码像我想要的那样工作,我希望我的最终结果看起来像这样.

<div id="one">TUVEXYZ</div>
<div id="two">TUVEXYZ</div>
Run Code Online (Sandbox Code Playgroud)

javascript replace

0
推荐指数
1
解决办法
82
查看次数

从php文件中删除空格

我有一个PHP文件,我输出json.

<?php
    header('Content-Type: application/json');
?>
var data = {
    "cars": [
    <?php foreach ($runshowcars as $rowscar):;?>
        {
            "id":"<?php echo $rowscar['id'] ?>",
            "name":"<?php echo $rowscar['name'] ?>"
        }
    ],
    "boats": [
    <?php foreach ($runshowboats as $rowsboat):;?>
        {
            "id":"<?php echo $rowsboat['id'] ?>",
            "name":"<?php echo $rowsboat['name'] ?>"
        }
    ],  
};
Run Code Online (Sandbox Code Playgroud)

这可行,但输出看起来像这样.

                        var data = {
        "cars": [
        {
            "id":"1",
            "name":"Ford"
        }
        ,{
            "id":"2",
            "name":"Honda"
        }
        ]
        };
Run Code Online (Sandbox Code Playgroud)

我希望它看起来像这样.

var data = {"cars": [{"id":"1","name":"Ford"},{"id":"2","name":"Honda"}]};
Run Code Online (Sandbox Code Playgroud)

我发现这样做的唯一方法是从我的php文件中删除空格,这显然不是一个理想的解决方案,因为它很难维护.

如何在这里剥离所有的空白区域?

我见过很多像这样的问题,如何缩小php页面的html输出?但是我不能在这里工作,因为我的数据不在变量中?

javascript php regex whitespace json

0
推荐指数
1
解决办法
135
查看次数

使用javascript单击切换类

我正在尝试使用js(无jQuery)创建一个简单的单击事件,如果我运行以下代码,则该代码仅适用于我单击的第一项。

    var listItem = document.querySelector('li');
    listItem.addEventListener('click', function(event) {
      this.classList.toggle('clicked');
    });
Run Code Online (Sandbox Code Playgroud)
.clicked {
  color:red;
}
Run Code Online (Sandbox Code Playgroud)
<ul id="mylist">
  <li>item 1</li>
  <li>item 2</li>
</ul>
Run Code Online (Sandbox Code Playgroud)

我看着另一种使用

        var listItem = document.getElementById('mylist');
        listItem.addEventListener('click', function(event) {
          this.classList.toggle('clicked');
        });
Run Code Online (Sandbox Code Playgroud)
    .clicked {
      background-color:red;
    }
Run Code Online (Sandbox Code Playgroud)
        <ul id="mylist">
          <li>item 1</li>
          <li>item 2</li>
        </ul>
Run Code Online (Sandbox Code Playgroud)
但这只会切换ul而不是我点击的li。

如何定位列表中的所有li,以便每次单击它们时都将其类切换

html javascript onclick

0
推荐指数
1
解决办法
2699
查看次数

Nunjucks 遍历数组中的项目以显示对象中的项目

在 javascript 中,我可以遍历一个数组来输出我的对象,如下所示。

var myArr = ["one","two","three"]
var myObj = {
  "one": {
    "title": "ones",
    "desc": "this is one"
  },
  "three": {
    "title": "threes",
    "desc": "this is three"
  },
  "two": {
    "title": "twos",
    "desc": "this is two"
  }
}

myArr.forEach(function (value) {
  console.log(myObj[value].title, myObj[value].desc);
});
Run Code Online (Sandbox Code Playgroud)

产出

ones this is one

twos this is two

threes this is three

console.log("number 2 - ",myObj[myArr[1]].desc)
console.log("number 2 - ",myObj["two"].desc)
Run Code Online (Sandbox Code Playgroud)

产出

number 2 - this is two

number 2 - this is two

我希望能够在 …

javascript arrays json static-site nunjucks

0
推荐指数
1
解决办法
6025
查看次数

JS按特定排序顺序排序

我需要按照特定顺序对数据进行排序,如下所示.

const sortBy = ['b','a','c','e','d']
const data = ['a','d','e']
Run Code Online (Sandbox Code Playgroud)

我知道如何通过降序/降序进行排序

console.log(data.sort((a, b) => a > b)) //["a", "d", "e"]
console.log(data.sort((a, b) => a < b)) //["e", "d", "a"]
Run Code Online (Sandbox Code Playgroud)

但是可以使用.sort按特定顺序排序吗?例如,低于我想要的订单sortBy

我目前正在通过在排序数组和我的数据之间创建一组公共项来实现此目的.

const commonItems = getCommonItemsInArrays(sortBy,data)
console.log(commonItems.map(item => item)) //["a", "e", "d"]

function getCommonItemsInArrays(array1,array2){
  return array1.filter(n => array2.indexOf(n) >= 0)
}
Run Code Online (Sandbox Code Playgroud)

这似乎工作正常,但我想知道是否有办法处理这个通过sort

javascript arrays sorting ecmascript-6

0
推荐指数
1
解决办法
501
查看次数