Изменить элемент имени HTML с помощью JavaScript - PullRequest
3 голосов
/ 25 февраля 2012

При нажатии на div (который я превратил в кнопку с другим кодом) мне нужен следующий код:

<div id="w1" name='w1-0' onclick="weekclick(id)">1<br /></div>

... имя меняется с name='w1-0' на name='w1-1'

Я использую следующий JavaScript:

function weekclick(id) {    
    document.getElementById(id).input.name = "w1-1";
}

Когда я предупреждаю имя идентификатора, оно говорит, что оно не определено. Что делать?

Ответы [ 2 ]

11 голосов
/ 25 февраля 2012

см. Код ниже:

<div id="w1" name='w1-0' onclick="weekclick(id)">1<br /></div>
<div onclick="weekclick('w1');">click me</div>​

<script type="text/javascript">
function weekclick(id) {    
    document.getElementById(id).setAttribute("name","w1-1");
}​
</script>

ссылка на скрипку - http://jsfiddle.net/TH9C2/

(удалите строку предупреждения из скрипки - она ​​просто там, чтобы показать вам, что она работает)

1 голос
/ 25 февраля 2012

прежде всего измените ваш вызов в html на этого пользователя this.id, а не просто на id:

<div id="w1" name='w1-0' onclick="weekclick(this.id)">1<br /></div>

, чем сделайте ваши js такими (удалите .input и используйте setAttribute):

function weekclick(id) {    
    document.getElementById(id).setAttribute('name', 'w1-1');
}

РЕДАКТИРОВАТЬ или вы измените свой вызов в html на это:

weekclick(this)

и ваша функция js должна быть такой:

function weekclick(domElement) {    
    domElement.setAttribute('name', 'w1-1');
}
...