0

我正在尝试选择具有类“名称”的所有元素,当我单击一个单选按钮时,它会翻转姓氏和名字,所以:汉克斯,汤姆|| 汤姆,汉克斯。这是我到目前为止所拥有的:

HTML:

<h1>Address Book</h1>

<p>Show Names as:</p>
<input name="lastfirst" value="last" type="radio">First, Last
<input name="firstfirst" value="first" type="radio">Last, First
<div>
    <table <thead="">
        <tbody>
            <tr>
                <th>ID</th>
                <th>Name</th>
                <th>Email</th>
            </tr>
        </tbody>
        <tbody>
            <tr>
                <td>9001</td>
                <td class="name">Tom Hanks,</td>
                <td>tomhanks@moviestars.com</td>
            </tr>
            <tr>
                <td>9002</td>
                <td class="name">Bruce Willis,</td>
                <td>brucewillis@moviestars.com</td>
            </tr>
            <tr>
                <td>9003</td>
                <td class="name">Jim Carrey,</td>
                <td>jimcarrey@moviestars.com</td>
            </tr>
            <tr>
                <td>9004</td>
                <td class="name">Tom Cruise,</td>
                <td>tomcruise@moviestars.com</td>
            </tr>
            <script>

            </script>
        </tbody>
    </table>
</div>
<meta charset="utf-8">
<title>Test</title>
<link rel="stylesheet" href="./webassets/style.css" media="screen" type="text/css">
    <h1>Company Staff List</h1>

<div>
    <table>
        <thead>
            <tr>
                <th>ID</th>
                <th>Name</th>
            </tr>
        </thead>
        <tbody>
            <tr>
                <td>9001</td>
                <td>Tom Hanks,</td>
            </tr>
            <tr>
                <td>9002</td>
                <td>Bruce Willis,</td>
            </tr>
            <tr>
                <td>9003</td>
                <td>Jim Carrey,</td>
            </tr>
            <tr>
                <td>9004</td>
                <td>Tom Cruise,</td>
            </tr>
        </tbody>
    </table>
</div>

这是我的jQuery。我使用了 .hide() 填充符,因为除了选择元素之外,我不确定如何执行此操作。只是一些提示会有所帮助。我不确定如何区分名字和姓氏。如果我能弄清楚如何简单地将名字和姓氏交换成一个变量,我肯定能找出其余的。

$(document).ready(function(){
  $("input[name='lastfirst']").click(function(){
    $(".name").hide();
  });

  $("input[name='firstfirst']").click(function(){
    $(".name").hide();
  });
}); 
4

3 回答 3

2

演示

$(document).ready(function () {
    $("input[name='change_last_first']:nth(0)").prop('checked', true)
    $("input[name='change_last_first']").change(function () {
        $(".name").text(function (_, old_txt) {
            var new_txt = old_txt.split(' ').reverse();
            return new_txt.toString().replace(',,', ' ') + ',';
        });
    });
});

HTML 已更改

<input name="change_last_first" value="last" type="radio">First, Last
<input name="change_last_first" value="first" type="radio">Last, First

参考

。文本()

。改变()

。代替()

。分裂()

.toString()

。逆转()

于 2013-10-18T01:30:37.933 回答
2

首先使用拆分它。 var splStr = input.split(/[ ,]+/);

现在连接使用input=splStr[1]+splStr[0];

于 2013-10-18T04:26:12.123 回答
1

您可以使用 split 函数input.split(/[ ,]+/); 和正则表达式来分隔文本,以分隔输入中的每个“单词”。然后您可以将每个值分配给一个新变量

前任:

var a = array[0], b = array[1]

从那里您可以将数组值连接成您选择的任何顺序。

于 2013-10-18T01:31:19.510 回答