小编sws*_*erg的帖子

Jquery 动态选项在选择表单中删除/添加

我有以下简单的 Html 代码,其中包含 2 个具有相同选项值的 SELECT 表单:

<select id="first">
    <option value="none">None</option>
    <option value="one">Toyota</option>
    <option value="two">Nissan</option>
</select>

<select id="second">
    <option value="none">None</option>
    <option value="one">Toyota</option>
    <option value="two">Nissan</option>
</select>
Run Code Online (Sandbox Code Playgroud)

我正在编写一个jquery脚本,它应该执行以下操作:如果在#first选择中我选择除“none”之外的任何值,例如丰田,它将自动从#second选择中消失:

<select id="second">
    <option value="none">None</option>
    <option value="two">Nissan</option>
</select>
Run Code Online (Sandbox Code Playgroud)

此外,如果我在#second选择中选择Nissan(假设#first仍然选择了丰田),它应该自动从#first选择中消失:

<select id="first">
    <option selected="selected" value="one">Toyota</option>
    <option value="none">None</option>
</select>
Run Code Online (Sandbox Code Playgroud)

最后,当我在任何选择表单中将选择器重置为“无”时,它应该在同一位置的另一个选择中重新创建该选项。

怎样才能更好地实现呢?使用 .remove()/.append() 操作还是 .hide()/.unhide() 更好?到目前为止,我创建了以下代码片段:

$(document).on('change','select', function() {
   var sel = $(this).attr('id');
   var val = $(this).val();

if ( sel === "first" && val != "none") {
    $("#second option[value="+val+"]").remove();
} else if ( sel === "second" && val …
Run Code Online (Sandbox Code Playgroud)

jquery select

6
推荐指数
1
解决办法
2万
查看次数

正则表达式$ 1变量重置

我有以下示例perl脚本:

use warnings;
use strict;

my $cont1 = 'item:test';
my $cont2 = 'item:test';

$cont1 =~ s/item:(.*)/$1/; my $one = $1;
$cont2 =~ s/dtms:(.*)/$1/; my $two = $1;

print "one = $one\ntwo = $two\n";
Run Code Online (Sandbox Code Playgroud)

这个脚本exec的结果:

one = test
two = test
Run Code Online (Sandbox Code Playgroud)

问题是在第一次成功的正则表达式匹配后$ 1没有被重置,因为第二个正则表达式实际上是失败的并且应该是空的,而是从前一个匹配中获取$ 1的值.我找到了一个奇怪的解决方法,通过在第一个正则表达式后添加奇数正则表达式来重置$ 1 =

"1" =~ /1/;
Run Code Online (Sandbox Code Playgroud)

结果现在正确:

one = test
two =
Run Code Online (Sandbox Code Playgroud)

问题是:重置1美元是最佳做法吗?

regex perl

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

标签 统计

jquery ×1

perl ×1

regex ×1

select ×1