jQuery   发布时间:2022-03-30  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了jquery – 在部分视图MVC 3剃须刀中消除重复ID大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个页面,它根据@L_944_3@交互添加动态部分视图.同样可以添加相同的局部视图.每个部分视图通过 JQuery和AJAX执行提交.什么是避免页面上的ID重复的最佳方法.这非常重要,因为JQuery函数使用ID选择器.请给我一个解决方案.

部分View1

<script type="text/javascript"> 
    $(function () {
        $("#MyButton1")
            .button()
            .click(function () {
                alert("MyButton1 clicked From MyForm1 ");
            });
    });
</script>
<div><p>MyForm1</p></div>
<form id="MyForm1" >
    <input id="MyButton1" type="button" value="buttonFromPartial1" />
 </form>

部分View2

<script type="text/javascript"> 
    $(function () {
        $("#MyButton1")
            .button()
            .click(function () {
                alert("MyButton1 clicked From MyForm2 ");
            });
    });
</script>
<div><p>MyForm2</p></div>

<form id="MyForm2" >
    <input id="MyButton1" type="button" value="buttonFromPartial2" />
</form>

解决方法

在服务器端或客户端创建生成随机ID的帮助程序或javascript代码.

在视图示例中的服务器端的C#函数

@function String GeneratEID(String prefiX)
{
return String.Format("{0}_{1}",prefix,Guid.NewGuid().ToString("N"));
}

视图示例中客户端的Javascript函数

function generatEID(String prefiX) {
  return prefix + Math.floor((1 + Math.random()) * 0x10000)
             .toString(16)
             .subString(1);
};

在局部视图内部创建一个包含生成值的变量并使用它.

@var buttonId = GeneratEID("button")
// buttonId = "button_85021948560128"
...

这样,每个局部视图都将生成自己的唯一ID.

大佬总结

以上是大佬教程为你收集整理的jquery – 在部分视图MVC 3剃须刀中消除重复ID全部内容,希望文章能够帮你解决jquery – 在部分视图MVC 3剃须刀中消除重复ID所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。