2010-02-17 3 views
0

В моем JavaScript-коде я должен сделать строку, подобную этой (я использую smarty template engine, это буквальный материал).Дайте JavaScript ID кнопки

<script language="javascript" type="text/javascript"> 
    function ajaxTextKill() { 
     // ...etc. 
     ajaxRequest.open("GET", "functions.php?action=kill{/literal}&id="+IWANTMYIDHERE+"&p={$smarty.get.page}&c={$smarty.get.sel}{literal}", true); 
     ajaxRequest.send(null); 
    } 

После этого в моем HTML-код,

<input type="button" id="87" value="del" onClick="return ajaxTextKill();" /> 

Я хотел бы дать код JavaScript значение идентификатора на вход в. Как это сделать?

+0

P.S .: идентификаторами не может начинаться с цифры – Harmen

+0

Вы хотите идентификатор кнопки ввода 87 в месте IWANTMYIDHERE? – epitka

+0

Чтобы ваш HTML был действительным, атрибут 'id' ** должен начинаться с буквы. http://www.w3.org/TR/REC-html40/types.html#h-6.2 –

ответ

0

Пусть элемент проходит себя функции по ajaxTextKill(this). Затем просто возьмите его ID на element.id.

function ajaxTextKill(element) { 
    var buttonid = element.id; 
    ajaxRequest.open("GET", "functions.php?action=kill{/literal}&id="+ buttonid +"&p={$smarty.get.page}&c={$smarty.get.sel}{literal}", true); 
    ajaxRequest.send(null); 
} 
+1

'this' будет работать внутри функции? –

+0

На самом деле не в этой конструкции. Исправлено: – BalusC

+0

Нет, это не так, из-за метода, используемого для обработки события. –

1

HTML

<input type="button" id="87" value="del" onClick="return ajaxTextKill(this.id);" /> 

JavaScript

function ajaxTextKill(id){ 
...etc. 
ajaxRequest.open("GET", "functions.php?action=kill{/literal}&id="+id+"&p={$smarty.get.page}&c={$smarty.get.sel}{literal}", true); 
ajaxRequest.send(null); } 
+1

Вам промывают мозги. JavaScript! = JQuery – BalusC

+0

@BalusC - исправлено;) –

1
<input type="button" id="a87" value="del" onClick="return ajaxTextKill(this.id);" /> 
3

Вам необязательно требуется идентификатор, если вы передадите ссылку на само поле.

<input type="button" id="87" value="del" onClick="return ajaxTextKill(this);" /> 

и доступ к ID, как так:

function ajaxTextKill(object){ 
    alert(object.id); 
} 
Смежные вопросы