2014-10-02 3 views
-1

Guys Я использую этот код, но ход появляется и сразу исчезает, когда я нажимаю:В JavaScript onClick: почему штрих появляется, а затем исчезает?

var tag = document.getElementById("tag"); 
function result() 
{ 
    $(tag.value).css('border','1px solid red'); 
} 

<button id="showBtn" onclick='result()'>Show</button> 

, но когда я изменить тип события «OnMouseOver», ход остается и Безразлично» t исчезают.

+1

Что именно является тег (вход, отд ...) ? – leopik

+0

И каково его значение? – Thilo

+0

@IT pro - пожалуйста, покажите свой ** HTML-код или сделайте JSFiddle ** для лучшего понимания. – prog1011

ответ

0

Как сказал jfriend00, вы вызываете document.getElementById слишком рано. Попробуйте:

function result() { 
    $(tag).css("border", "solid 1px red"); 
} 
var tag; 
$(function() { 
    tag = document.getElementById("tag"); 
}); 

Редактировать после Тило комментарий:

var tag; 
$(function() { 
    tag = document.getElementById("tag"); 
}); 

function result() { 
    $("#" + tag.value).css("border", "solid 1px red"); 
} 

Предположим, что ваш HTML-то вроде:

<input id="tag" value="rect"></input> 
<button id="showBtn" onclick='result();'>Show</button> 
<div id="rect">This is a Div</div> 
+0

, вам не нужна часть' .value'. – Thilo

Смежные вопросы