如何从codeehind向HmlGenericControl添加JavaScript函数
How to add a JavaScript function to an HmlGenericControl from codebehind
从服务器端,我正在向客户端动态注入一个input和button元素。我还想在每个函数中注入一个JavaScript函数。输入的功能应触发onchange
,按钮的功能应为onclick
这就是我迄今为止所做的:
//js definition
string script = @"<script>";
script += @" function OnCroquis0BtnClick()
{
var fileUp = $('#File');
fileUp.trigger('click');
}";
script += @"function OnCroquis0FileSelected()
{
txtBx = document.getElementById('MainContent_txtBx');
var fileUpload = document.getElementById('File');
txtBx.value = fileUpload.files[0].name;
}";
script += @"</script>";
ClientScript.RegisterClientScriptBlock(GetType(), "testScript0" ,
script);
//html elemets definition
HtmlGenericControl input = new HtmlGenericControl(),
btn = new HtmlGenericControl();
input.TagName = "input";
input.ID = lbl.Text + "File";
input.Attributes["onchange"] = "OnCroquis0Fileselected()";
input.Attributes["style"] = "display: none;";
docRequeridosMainDiv.Controls.Add(input);
btn.TagName = "button";
btn.ID = "btn";
btn.InnerText = "Anejar";
btn.Attributes["onclick"] = "OnCroquis0BtnClick(); return false";
btn.Attributes["style"] = "margin-right:2%;";
docRequeridosMainDiv.Controls.Add(btn);
它们是可见的,样式正在被应用,但js不是。我想,由于任何html属性都是通过Attributes["attri"]
添加的,也许js函数也可以。
谢谢,提前。
尝试使用RegisterStartupScript而不是RegisterClientScriptBlock
Page.ClientScript.RegisterStartupScript(this.GetType(), "testscript0", script, false);
这强制要求在加载页面中的所有元素之后执行脚本。
设法使其工作。在我的版本中,函数名放错了位置:P
相关文章:
- 如何在ASP中为用户控件添加Javascript对象网
- 向Android浏览器添加JavaScript
- 如何在Opencart中动态添加JavaScript
- 如何根据需要优雅地添加javascript/css
- 在Android的Webview中添加Javascript
- Phonegap/Cordova:如何添加Javascript多点触摸事件
- 添加@javascript标记时,Cucumber中的HTTP身份验证失败
- 当我的表单中已经有一个操作时添加JavaScript
- 当我添加JavaScript时,链接按钮停止工作
- Ruby on Rails 4:在 Rails Web 应用程序中添加 Javascript 文件时遇到问题
- 可以'无法正确添加JavaScript值
- 在页面上添加javascript后呈现指令
- 如何在我更改输入时添加javascript操作'的内容
- 在Dotnet Highchart中添加javascript函数
- 如何在R Shiny应用程序中添加JavaScript来更改CSS文件
- 基于使用的ASP MVC EditorFor/Partial模板添加JavaScript引用
- 添加javascript变量以发送数据
- 动态添加javascript事件监听器,做一些无法解释的事情
- 使用wp_enque_script()在Wordpress-functions.php中添加Javascript
- 添加JavaScript onClick以动态生成asp按钮