Я пытаюсь передать динамически созданный идентификатор из формы в JavaScript.
<script type="text/javascript">
$(function() {
$(".button-call").click(function() {
var fld = "<?= $div_id;?>";
var test = $(fld).val();
alert(test);
...
<form method="post" action="" enctype="multipart/form-data">
<input type="text" class="tb" name="<?php echo $div_id; ?>" id="<?php echo $div_id; ?>" value="" maxlength="80" />
<input type="submit" value="Send" class="button-call" name="p_k2" id="p_k2" />
</form>
оповещение (тест) показывает: undefined.
когда я изменяю его на оповещение (fld), я получаю два оповещения: сначала отображается пустое поле, затем правильный $ div_id
что я делаю неправильно ??
РЕДАКТИРОВАТЬ 1: я пытаюсь отобразить текст из ввода ...
РЕДАКТИРОВАТЬ 2: это полный JavaScript:
<script type="text/javascript">
$(function() {
$(".button-call").click(function() {
//var fld = "<?= $div_id;?>";
var fld = "input[name=<?=$div_id;?>]";
//var fld = "#<?=$div_id;?>";
var test = $(fld).val();
var dataString = 'content='+ test;
alert(fld);
alert(test);
if(test=='')
{
alert("Write some text ...");
}
else
{
$("#flash").show();
$("#flash").fadeIn(1000).html('<img src="images/ajax-loader.gif" align="absmiddle"> <span class="loading"> Loading ...</span>');
$.ajax({
type: "POST",
url: "p_k2.php",
data: dataString,
cache: false,
success: function(html){
$("#divToRefresh").after(html);
document.getElementById(fld).value='';
document.getElementById(fld).focus();
$("#flash").fadeOut(1000);
}
});
}
return false;
});
});
</script>
РЕДАКТИРОВАТЬ 3: этот пример я использую: http://www.9lessons.info/2009/05/insert-and-load-record-using-jquery-and.html все работает нормально, если я использую фиксированный идентификатор.Но не могу заставить его работать с динамически созданным идентификатором.
РЕДАКТИРОВАТЬ 4: ОК, есть много ответов, но ни один из них, кажется, не работает.Я постараюсь упростить.
Я вернусь к этому примеру, с которого я начал (http://www.9lessons.info/2009/05/insert-and-load-record-using-jquery-and.html).
Мой веб-сайт похож на Facebook. У вас есть друзья, и на странице "стены" выУ меня много разных окон для комментариев (для каждого из ваших друзей). Чтобы идентификаторы этих окон для комментариев отличались друг от друга (чтобы не публиковать что-либо для всех ваших друзей), мне пришлось использовать идентификаторы друзей из базы данных (input type="text" class="tb" name="<?php echo $div_id; ?>" id="<?php echo $div_id; ?>" value=""
).работает нормально.
Я могу получить этот идентификатор в JavaScript (var fld = "input[name=<?=$div_id;?>]";
), но не могу прочитать значение этого текстового поля. Как только я это сделаю, я позабочусь о том, чтобы вставить его вмоя база данных ...