Span click alert, используя javascript с Asp.Net - PullRequest
0 голосов
/ 10 ноября 2011

У меня есть кнопка Asp.Net и тег span, для которого у меня есть изображение. Теперь, когда я нажимаю элемент span (то есть изображение), я могу автоматически нажимать кнопку и получать предупреждение.

Я могу сделать это с помощью функции, показанной ниже для события нажатия кнопки, но я не знаю, как это сделать, когда я нажимаю элемент.

CSS:

#container a span 
{
display:none; 
background-image:url(images/alert.png); 
background-repeat:no-repeat; 
width:16px; 
height:16px; 
position:absolute;
right:0px; 
top:0px;
} 

#container a:hover span 
{
display:block;
}

Это мой промежуток в <a>:

    <div class='container a'><a href='#'>
    <img src='uploads/" + document.getElementById("currentDirectory").value + "/" 
    + file.name + "' width='64' height='64'/>
    <span onclick='document.getElementById('<%=btnAlert.ClientID%>').click();'>
    </span>
    </a>
    </div>";

Это моя простая кнопка Asp.Net:

<asp:Button ID="btnAlert" runat="server" Text="Button" />

Это код, если я использую функцию Javascript:

  Protected Sub btnAlert_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnAlert.Click
     System.Web.UI.ScriptManager.RegisterClientScriptBlock(Page, GetType(Page), "Script", "Somefunction();", True)
End Sub

1 Ответ

1 голос
/ 10 ноября 2011

Работает нормально для меня. У вас нет внутреннего содержимого в вашем диапазоне, поэтому, возможно, именно поэтому он не может вызвать onclick, потому что он не занимает места в вашем домике. Поэтому, когда вы думаете, что нажимаете на него, вы на самом деле не нажимаете на него, поскольку он не занимает места.

Попробуйте добавить контент в промежуток, как в моем примере. Если это не сработает, дважды проверьте правильность идентификатора кнопки.

<input type="button" id="mybutton" onclick="alert('hello')">
<span onclick="document.getElementById('mybutton').click()">My Span</span>

jsFiddle

...