如何使用jQuery

时间:2015-05-12 11:26:45

标签: jquery

当href属性未定义时,我想用jQuery更改链接内的文本。  这是我的代码;

<input type="text" id="sample"/><button id="button">submit</button>
<table id="table" border="1">
<tr>
    <td>less than 50</td>
     <td>less than 100</td>
     <td>less than 500</td>
     <td>less than 1000</td>
     <td>more than 1000</td>
</tr>

</table>

JS:

$("#button").click(function()
   {
     var val=$("#sample").val();//alert(val)
       if(val<50){
           var col1=val; 
        }else if(val<100){
           var col2=val; 
        }else if(val<500){
           var col3=val; 
        }else if(val<1000){
           var col4=val; 
        }else if(val>1000){
           var col5=val; 
        }
          var row='<tr>'+
                  '<td><a href="#">'+col1+'</a></td>'+
                  '<td><a href="#">'+col2+'</a></td>'+
                  '<td><a href="#">'+col3+'</a></td>'+
                  '<td><a href="#">'+col4+'</a></td>'+
                  '<td><a href="#">'+col5+'</a></td>'
                   $("#table tr:last").after(row);
                   $("#table").each(function(){
                      if ($(this).attr('href') == undefined){
                         var href=$(this).attr('href');                                         
                          $(href).text("");
                       } 
                   });
        }
      );

我需要所有未定义的href text()为null或0.I像这样使用。,

   $("#table").each(function(){
        if($(this).attr('href') == undefined){
            var href=$(this).attr('href');
             $(href).text("");
          } 
    });

但它没有奏效。 Sql Fiddle:http://jsfiddle.net/2ok5mzx9/

3 个答案:

答案 0 :(得分:2)

将它们定义为0

var col1 = 0;
col2 = 0;
col3 = 0;
col4 = 0;
col5 = 0;

if (val < 50) {
    col1 = val;
} else if (val < 100) {
    col2 = val;
} else if (val < 500) {
    col3 = val;
} else if (val < 1000) {
    col4 = val;
} else if (val > 1000) {
    col5 = val;
}

Working Demo

答案 1 :(得分:1)

您没有将href视为#

$("#table a").each(function () {
    if ($(this).attr('href') == undefined || $(this).attr('href') == '#') {
        $(this).text("");
    }
});

演示:https://jsfiddle.net/tusharj/2ok5mzx9/1/

答案 2 :(得分:0)

我肯定会用这个改变你的剧本:

$("#button").click(function() {
    $('#table').append('<tr><td></td><td></td><td></td><td></td><td></td></tr>');
    var range = new Array(Number.NEGATIVE_INFINITY, 50, 100, 500, 1000, Number.POSITIVE_INFINITY);

    for (var i = 0; i < range.length; i++) {
        if ($('#sample').val() > range[i + 1] || $('#sample').val() < range[i]) {
            continue;
        }

        $('#table tr:last td:eq(' + i + ')').html('<a href="#">' + $('#sample').val() + '</a>');

        break;
    }
});

HERE是工作示例..