0

使用 jquery,如果文本框包含默认值并且“isrequired”值为“是”,如何将这些元素的颜色更改为红色?

<input type="text" value="Name" isrequired="Yes">
<input type="text" value="Address" isrequired="No">
<input type="text" value="Age" isrequired="Yes">
4

2 回答 2

4

更改您的输入 html 以添加一个额外的 data-* 属性来存储默认值

<input type="text" value="Name" data-default="Name" isrequired="Yes">
<input type="text" value="Address" data-default="Address" isrequired="No">
<input type="text" value="Age" data-default="Age" isrequired="Yes">

jQuery

$('input[isrequired=Yes]').each(function(){
if($(this).val()==$(this).data("default"))
{$(this).css('color', 'red');}
})

更新:使用对我来说很新的 defaultvalue 属性

$('input[isrequired=Yes]').each(function(){
  if (this.value == this.defaultValue) {$(this).css('color', 'red'); }

});

更好,更干净。

于 2012-06-17T04:52:11.087 回答
1

如果值是用户键入的默认值,则以下将文本字段文本更改为红色。

JavaScript:(需要 jQuery)

$('input[type=text][isrequired=Yes]').on("change", function(){
  if ($(this).val() == this.defaultValue) { $(this).addClass("req"); }
  else { $(this).removeClass("req"); }
});

CSS:

.req { color:red }
于 2012-06-17T04:57:53.063 回答