1

我有:

<select name="TopicID" id="TopicID">
  <option value="00">XX</option>
  <option value="02">YY</option>
</select>

我怎样才能使当用户选择一个新值(例如“YY”)时,选择的标题会像这样更新:

<select title="YY" name="TopicID" id="TopicID">
  <option value="00">XX</option>
  <option value="02">YY</option>
</select>
4

6 回答 6

2
$("#TopicID").on("change", function() {
    var select = $(this);
    select.attr("title", select.find(":selected").text());
});

例子

于 2012-07-28T07:30:47.257 回答
2

您可以绑定到更改事件并更新title属性:

$("select").change(function() {
    $(this).attr("title", $("option:selected", this).text());
});

请注意,上面的代码使用attr()而不是prop()来强调我们正在创建或更新 HTML 属性而不是 DOM 属性。这只是一个偏好问题,使用prop()会导致相同的行为。

于 2012-07-28T07:31:22.500 回答
1

尝试这个:

$('#TopicID').change(function () {
    $(this).attr('title', $('#TopicID option[value="' + this.value + '"]').text());
});

现场查看http://jsfiddle.net/MAhmadZ/PpjwT/

于 2012-07-28T07:33:20.433 回答
0

var newtitle=$('#TopicID').val();
$('#TopicID').attr('title',newtitle);

于 2012-07-28T07:39:50.857 回答
0

也许是这样的:

$('#TopicID').change(function() {
    var selectedItem = $(this).val();
    $(this).attr('title', selectedItem);
});
于 2012-07-28T07:29:34.007 回答
0

它不是 jquery,但应该这样做。将以下代码的第一行添加到您的控件中,然后在脚本中添加后面的函数

onchange="SetTitle(this,this.value);"
function SetTitle(cntrl,val)
{
cntrl.setAttribut("title",val);
}
于 2012-07-28T07:32:34.843 回答