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

Я начал с использования этого примера: 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="#"' на то, что пользователь вводит в поле адреса (которое будет расположено непосредственно под полем "введите имя кнопки") после нажатия кнопки "Создать кнопку". Я пытался в течение нескольких дней и не думаю, что я был близок к тому, чтобы понять это или найти хороший пример.

1 ответ

Решение

Вот проверить эту скрипку - 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/

Другие вопросы по тегам