1

私の質問を例で説明します。

ここに私のhtmlコードがあります:

<td>Name<a href="http://manual"><span><img src="x" width="15" title="The name></span></a></td>
<td><input type="text" name="name" maxlength="80" size="93" ></td>

私がやりたいことは、入力フィールドに最も近い img タイトルを取得し、それをフィールド タイトルとして設定することです。目的は、基本的にすべてのページのフォーム フィールドをチェックし、タイトルが設定されていない場合は、タイトルに最も近い画像タイトルを設定することです。

私がこれまでに行ったこと:

$('form').find(':input').each(function(){
    if(!$(this).attr('title') && $(this).attr('type') != "hidden" ){

        var title = $(this).siblings('td').find("img").attr("title");
        $(this).attr('title', title);

    }
});

しかし、成功しません。誰かがこれで私を助けてくれれば幸いです。

ありがとう、

4

5 に答える 5

1
$('form').find(':input').each(function(){
    if(!$(this).attr('title') && $(this).attr('type') != "hidden" ){
        var title = $(this).parents('td').prev().find('img').attr('title');
        $(this).attr('title', title);

    }
});
于 2013-01-15T07:07:55.787 に答える
1
$('form').find(':input').each(function(){
    if(!$(this).attr('title') && $(this).attr('type') != "hidden" ){
        var title = $(this).closest("tr").find("img").attr("title");
        $(this).attr('title', title);   
    }
});
于 2013-01-15T07:09:10.463 に答える
1

まず、非表示になっていない、タイトルのないすべてのフォーム入力を見つけます。img次に、現在の行を検索し、そのタイトルをコピーします

$('form :input:not([title]):not([type="hidden"])').each(function() {
  var title = $(this).closest('tr').find('img').attr('title');
  $(this).attr('title', title);
});

テスト用のJSFiddle

于 2013-01-15T07:41:37.547 に答える
1
$('form').find(':input').each(function(){
    if(!$(this).attr('title') && $(this).attr('type') != "hidden" ){
        var title = $(this).closest("tr").find('td').find("img").attr("title");
        $(this).attr('title', title);

    }
});
于 2013-01-15T07:02:50.083 に答える
1

あなたはこれを行うことができます:

    $('form').find(':input').each(function(){
       var image = $(this).closest('tr').find('img');
    });

これにより、最も近い tr タグが検索され、その中の画像が検索されます。

于 2013-01-15T07:07:44.353 に答える