怎么用js创建一个linkbutton

怎么用js创建一个linkbutton,第1张

<script>

var linkbutton=document.createElement('<a>')

linkbutton.onclick=function(){

//此处写你的事件代码

alert("此处写你的事件代码")

}

linkbutton.innerHTML="这是你的button名字"

linkbutton.href="####"

document.body.appendChild(linkbutton)

</script>

(1).在界面中添加一LinkButton,取名为:Label_Confirm,将将Visisable属性置False

(2).在Page_Load里加入: Page.RegisterClientScriptBlock("BeSureDelete","<script>function sure(){if(confirm('你确定要删除这条记录吗?')==true) __doPostBack('Label_Confirm','')}</script>")

//注意__doPostBack是两个下划线,且后面跟的Label_Confirm就是我们加的控件ID

(3)在要执行的确认的地方加入这样的代码:如在DataGrid里执行删除代码时:

private void DataGrid1_ItemCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)

{

if(e.CommandName.ToString().ToLower()=="delete")

{

Label_Confirm.Text=e.Item.Cells[1].Text.Trim()

//这儿我是将选中的单元格参数传给Label_Confirm保存,其实可以不用这种方式,具体问题遇到时灵活运用啦

Page.RegisterStartupScript("msgDelete","<script>sure()</script>") //这儿就是调用JavaScript的BeSure函数了

}

……

}

(4),然后就可以在Label_Confirm_Click里处理你的代码了,如:

private void Label_Confirm_Click(object sender, System.EventArgs e)

{

DelFunction(Label_Confirm.Text.Trim())

}

q511579599兄和wangweixznu兄的解答都有参考价值

你的想法本身没太大问题,只不过没考虑到Javascript的“每隔20秒执行一次”的运行环境是当前页面,只要页面刷新就没效果了,用Ajax是比较妥当的方法

你所谓的“而且当母版页重新刷新加载,能保证已经用LinkButton2 关闭的showwin() 不再执行,也能用LinkButton1重新使showwin()执行 ?”只是一种假象,虽然点击LinkButton1能执行,但是能前面的执行已经没关系了,要保证JS的“每隔20秒执行一次”能想开就开、想停就停就不能刷新页面,如果你想刷新页面还能继续上一次的执行那就更复杂了。

具体的解决方法是:LinkButton1点击的 *** 作用Javascript来处理,如果涉及后端交互就是用Ajax


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/bake/11329839.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-15
下一篇2023-05-15

发表评论

登录后才能评论

评论列表(0条)

    保存