鉴于:
var value = $this.text();
其中价值等于:在绿色中的Phasellus pellentesque metus。 Praesent euismod scelerisque diam。 Morbi erat turpis,lobortis in,consequat nec,lacinia sed,enim。 Curabitur nisl nisl,consectetuer ac,eleifend a,condimentum vel,sem。
当用户键入时:其中值等于:在nulla中的Phasellus pellentesque metus。 Praesent euismod scelerisque diam。 Morbi erat turpis,lobortis in,consequat nec,lacinia sed,enim。 Curabitur nisl nisl,consectetuer ac,eleifend a,condimentum vel,sem。!!!
3 !!!
我希望JavaScript能够提醒,允许我调用不同的函数。
我正在尝试使用:
if (/!!!$/.test(value)) {} but that doesn't seem to be working.
想法?
答案 0 :(得分:1)
看起来\n
之后有一个!!!
。使用/m
标志来制作正则表达式多行。
if (/!!!$/m.test(value)) {
console.log("it works");
}
检查一下:
var s = "When the user tl, sem.The 3 !!!";
if (/!!!$/m.test(s))
console.log("multiline matches"); //prints
if (/!!!$/.test(s))
console.log("single line matches"); //prints
s += "\n";
if (/!!!$/m.test(s))
console.log("multiline matches"); //prints
if (/!!!$/.test(s))
console.log("single line matches"); //doesn't print
答案 1 :(得分:0)
这段代码会注意到你转换为jquery对象的工作不对,请使用以下
var value = $(this).text();
答案 2 :(得分:0)
$这并不是指自我。 $(this)指的是self。所以应该是这样的:
var value = $(this).text();
完整的例如:
<body>
<p>hello!!!</p>
<p>done</p>
</body>
<script>
$(document).ready( function()
{
$("p").click( function()
{
var value = $(this).text();
if (/!!!$/.test(value)) { msg = 'done';}else{ msg = 'not done';}
alert(msg);
});
});
</script>