Javascript 尝试更改类型=";按钮“;超链接
以下代码适用于“我的按钮”,单击该按钮时会显示图像:Javascript 尝试更改类型=";按钮“;超链接,javascript,jquery,asp.net,Javascript,Jquery,Asp.net,以下代码适用于“我的按钮”,单击该按钮时会显示图像: <input type="button" onclick='javascript:showImg("<%# FieldValue %>")' /> 我想将其更改为超链接“显示”,但以下代码不起作用 <asp:HyperLink ID="displayImg" runat="server" NavigateUrl='javascript:showImg("<%# FieldValue %>")'&
<input type="button" onclick='javascript:showImg("<%# FieldValue %>")' />
我想将其更改为超链接“显示”,但以下代码不起作用
<asp:HyperLink ID="displayImg" runat="server" NavigateUrl='javascript:showImg("<%# FieldValue %>")'>Preview</asp:HyperLink>
预览
它抛出错误:
JavaScript运行时错误:参数无效
有什么帮助吗?您不应该使用
NavigateUrl
属性,这是一个URL。。。使用以下命令:
<asp:HyperLink ID="displayImg" runat="server"
PostBackUrl="#"
onclick="showImg('<%# FieldValue %>');return false;">
Preview</asp:HyperLink>
这将导致:
<a href="#" onclick="alert('hi!')">Preview 1</a>
<a onclick="alert('hi!')" href="#">Preview 2</a>
<a onclick="alert('hi!');" href='javascript:WebForm_DoPostBackWithOptions(new WebForm_PostBackOptions("ctl00$MainContent$ctl01", "", false, "", "#", false, true))'>Preview 3</a>
在最后一个选项中,它将始终发布
简单地说,选择最好的方法来完成它,它们都是一样的。或者
<a ID="displayImg" onclick='showImg("<%= FieldValue %>")'>Preview</a>
预览
问题是,当它位于服务器标记(asp:hyperlink)内时,将无法正确解析它。下面是一个正确的示例,用于在HiperLink NavigateUrl中绑定某些值:
NavigateUrl=“javascript:showImg(“”)”FYI:setting“javascript:”因为
onclick=“javascript:
中的协议与{EventName}上的所有协议一样冗余属性需要JavaScript内容。您是否尝试过在浏览器中“查看源代码”以查看传递到JavaScript函数中的内容?它是传递字符串还是文本?我的感觉是,您不需要“刚刚添加了3个可以执行的操作示例”…您只需在当前代码中使用onclick=…
,然后设置NavigateUrl
到#
“即使您想使用它,也只需在代码隐藏文件中添加一个runat=“server”,然后您就可以使用它的ID找到该控件“-这不正确-将不会按预期进行分析。它将给出一个文本值。@geedubb他应该使用
,或者如果在控件内,则使用该控件的Eval
或Bind
属性,但在他问题中,没有说明他在控件内。你在假设情况,没有必要否决我的答案,因为它是正确的,只要问OP他为什么使用#
,让他正确提问…@balexandre感谢你花时间写出来,警报可以很好地处理这个问题,但当我尝试插入onClientClick='javascript:showImg(“”)时,我看的不是警报'>它告诉我JavaScript运行时错误:参数无效。我想在需要时显示一张图片clicked@John在您的回答中,没有提到什么是FieldValueString
,这是页面的属性吗,这是控件的属性吗?当我们在集合对象内部导航时,通常使用
,例如,GridView
中的行,但在您的问题中没有提到这一点,为此,我需要指出您应该使用
。感谢您的回复,但仍然收到JavaScript运行时错误:无效参数。我正在输入错误数据绑定方法,如Eval()、XPath()和Bind()只能在数据绑定控件的上下文中使用。感谢您的回复。我正在使用预览,但仍会收到运行时错误Remove onclick。你不需要它。谢谢你的帮助,但它仍然给我那个错误。我做错了什么?
<a href="#" onclick="alert('hi!')">Preview 1</a>
<a onclick="alert('hi!')" href="#">Preview 2</a>
<a onclick="alert('hi!');" href='javascript:WebForm_DoPostBackWithOptions(new WebForm_PostBackOptions("ctl00$MainContent$ctl01", "", false, "", "#", false, true))'>Preview 3</a>
<a ID="displayImg" onclick='showImg("<%= FieldValue %>")'>Preview</a>