В jquery или jquery mobile, как можно передать ссылку, созданную пользователем, на кнопку, также созданную пользователем? Под пользователем я имею в виду конечного пользователя, а не меня

0

Я начал с этого примера: http://jsfiddle.net/WEyyh/144/;

<div data-role="page" id="home">
    <div data-role="content">

        <input type="text" id="buttonText" placeholder="Enter Button Name"/>
        <input type="button" id="createButton" value="Create Button" />
        <div id="buttonPlaceHolder">&nbsp;</div>

    </div>
</div>
<script>
    $('#createButton').bind('click', function() {
        $('#buttonPlaceHolder').append('<a href="#"  
            data-role="button">'+$('#buttonText').val()+'</a>');
        // refresh jQM controls
        $('#home').trigger('create');
    });
</script>

и теперь я хочу добавить функциональность каждой новой кнопке, созданной пользователем, используя его/ее ввод веб-адреса и передавая его на якорь для этой кнопки. т.е. я хочу заменить хеш-метку в "href=" # "на то, что пользователь вводит в поле адреса (которое будет расположено непосредственно под полем" имя кнопки ввода ") после нажатия кнопки" Создать ". Я пытаюсь в течение нескольких дней и не думаю, что я приблизился к тому, чтобы понять это или найти хороший пример.

  • 0
    Вам не нужно улучшать всю страницу $('#home').trigger('create'); , используйте $( "[data-role=button]" ).button(); или $( ".selector" ).button(); ,
Теги:
jquery-mobile
jquery-mobile-button

1 ответ

0
Лучший ответ

Здесь ознакомьтесь с этой скрипкой - http://jsfiddle.net/WEyyh/152/

Я просто взял ваш пример и добавил другой ввод в вашу форму с идентификатором url.. и когда кнопка создается, я использую.val() этого ввода и помещаю ее вместо # в ваш якорь

$('#buttonPlaceHolder').append('<a href="' + $('#url').val() + '" data-role="button">'+$('#buttonText').val()+'</a>');

Имейте в виду, что когда вы вводите что-то в поле ввода, вы должны иметь http://там, потому что иначе он будет считать, что это локальная ссылка.. попробуйте http://www.google.com

Ссылка API для val() - http://api.jquery.com/val/

  • 0
    Вы, сэр, с благодарностью. Я пытался это сделать, но забыл включить .val () +. Это именно то, что мне нужно. Спасибо.
  • 0
    Нет проблем :) включил API-ссылку для val () в ответ на всякий случай

Ещё вопросы

Сообщество Overcoder
Наверх
Меню