简体   繁体   English

VS2010笨拙地呈现控件JS

[英]VS2010 renders controls JS awkwardly

I have created a Website Project in VS2010. 我在VS2010中创建了一个网站项目。 My Controls are not rendered correctly. 我的控件未正确呈现。 The JS that is produced is not correctly formatted. 生成的JS格式不正确。 Here is an example: 这是一个例子:

    protected void Page_PreRender(object sender, EventArgs e)
    {
        if (!IsPostBack)
        {
            objListBox.Attributes.Add("onchange", "Control_doPostBack('" + objListBox.ClientID + "','ListBox_OnClick'); return false;");
            objListBox.Attributes.Add("onblur", "Control_doPostBack('" + trListbox.ClientID + "','ListBox_OnBlur'); return false;");
            img.Attributes.Add("onclick", "Control_doPostBack('" + trListbox.ClientID + "','IMG_OnClick'); return false;");
        }
    }

and the responding control is rendered as: 并且响应控件呈现为:

<select size="4" name="ctl00$PlaceHolder_Content$drop$objListBox" onchange="Control_doPostBack(&#39;PlaceHolder_Content_drop_objListBox&#39;,&#39;ListBox_OnClick&#39;); return false;setTimeout(&#39;__doPostBack(\&#39;ctl00$PlaceHolder_Content$drop$objListBox\&#39;,\&#39;\&#39;)&#39;, 0)" id="PlaceHolder_Content_drop_objListBox" onblur="Control_doPostBack(&#39;PlaceHolder_Content_drop_trListbox&#39;,&#39;ListBox_OnBlur&#39;); return false;" style="position:absolute;"> 

 </select>

As you can see, the ' are rendered to &#39 which screwes up the Browser. 如您所见,将'呈现为&#39 ,这会弄乱浏览器。

Is there a tweak to msbuild or inside the project properties? 是否需要对msbuild或项目属性进行调整?

Any help is highly appreciated. 非常感谢您的帮助。

Out of curiosity, what renders if you change 出于好奇,如果您进行更改会带来什么

   objListBox.Attributes.Add("onchange", "Control_doPostBack('" + objListBox.ClientID + "','ListBox_OnClick'); return false;");

to

   objListBox.Attributes.Add("onchange", "Control_doPostBack(\'" + objListBox.ClientID + "\',\'ListBox_OnClick\'); return false;");

?

The browser is in error. 浏览器错误。 name="a'b'c" and name="a&#39;b&#39;c" are two completely equivalent ways of specifying an attribute whose value is a'b'c . name="a'b'c"name="a&#39;b&#39;c"是两种完全等效的方法,用于指定值为a'b'c的属性。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM