Jquery DOM Manipulation Somenthing比这更好

Jquery DOM Manipulation Somenthing better than that?

本文关键字:更好 Somenthing DOM Manipulation Jquery      更新时间:2023-09-26

我正在尝试找出一种更好的方法来改进下面的代码更优雅地使用 jquery 选择器。

我的问题是我有一个不同的用户消息要在特定的用户中向用户显示div 跨我的应用程序的许多页面,我正在选择所需的选择器及其根据某个值的值将所需元素中的消息更改为在下面显示:

/*Javascript*/ 
if (var == value) {
            msg = "Msg 1 <br>";
            msg = msg + "msg 1 continue... &nbsp;<br>"
} else if (var == value2) {
            msg = "Msg 2 <br>";
            msg = msg + "msg 1 continue... &nbsp;<br>"
}

if(msg != "") {
   document.getElementById('IdSelector').style.display = 'block';
   document.getElementById('IdSelector').innerHTML=msg;
}

我的 html5 显示在下面:

<div> id="IdSelector" class="classMsg">&nbsp;</div>

更好的方法、模板引擎或策略如何处理这个问题,没有吸。

我需要一些有效的代码示例,请并非常感谢。

您可以向

html 元素添加 data-id 属性,如下所示:

<div data-id="1" class="classMsg">&nbsp;</div>

然后在你的 JavaScript 代码中,做一些类似于 Chris 建议的操作,例如:

$('.classMsg').each(function(_, element) 
{
    var dataID = $(element).attr('data-id');
    switch(dataID)
    {
        case 1:
            element.css('display', 'block').html('Message 1');
            break;
        case 2:
            element.css('display', 'block').html('Message 2');
            break;
        ...
    }
});

只需使用 switch()

switch(var){
  case 1:
    alert("My value is 1");
    break;
  case "error":
    alert("My value is (string) error");
    break;
  default:
    alert("default value");
   break;
}

只需将 alert() 替换为您的代码即可。希望这是你需要的