使用jquery从模态中获取值

问题描述 投票:0回答:2

- - - - - -解决了 - - - - - -

感谢您抽出宝贵时间来帮助我。我设法让它现在工作。我认为这个问题是我的疏忽。我必须在我的模态上添加getVal,就像id="modal_"getVal一样。它调用了错误的模态,这就是输入框返回空的原因。我很抱歉,我很感激人们所做的帮助。谢谢


我有一个简单的模态,其中包含一个文本框和按钮。

<input type="text" class="form-control" id="textb" val_A="1">
<button type="button" id="but"> submit </button>

我想在按钮点击时获取文本框.val()和属性val_A

$(document).on('click','#but', function() {
name = $('#textb').attr('value');
val_A = $('#textb').attr('val_A');

alert(name + "-" + val_A);

});

但我得到了name未定义的结果。

香港专业教育学院也试过$('#textb').val();,它没有奏效。

请注意,我想要一个模态中的文本框中的值,并且不确定是否有一种不同的方法来获取考虑模态行为的值。

---------- [更新] -----------

单击此按钮时,将显示模态

<button type="button" class="btn" val="1"> show modal </button>

按钮有一个特定的值,val=1然后激活一个特定的模态。因此,$(#modal_+getVal)

$(document).on('click','.btn', function () {
getVal = $(this).attr('val');
$('#modal_+getVal').modal({show:true})
});

这让我想到了上面的问题。在模态出现后,我想在点击时得到文本框的值,模态内的另一个按钮。

但它显示的都是未定义的

jquery twitter-bootstrap bootstrap-modal
2个回答
0
投票

关于你的问题,模态和任何其他div之间应该没有任何区别。如果textarea(你的文本框是textarea,不是吗?)不在另一个框架或iframe中,你可以找到带有'普通'jQuery选择器用法的模态。话虽如此,这里有一些可能的解决方案:

如果您的文本框是textarea,请尝试以下操作:

var textbox_value = $('#textb').val();

如果所有这些都不起作用,请尝试确定您是否选择了正确的元素! console.log($('#textbox'))打印什么?

编辑:

哦,是的。你可能想试试这个:

<div id="foo" data-valA="test"></div>

<script>
    $('#foo').data('valA');
</script>

编辑2:

我不能经常把这个链接起来:Why is console.log() considered better than alert()?


0
投票
$('.btn').on('click', function () {
    var modelNumber = $(this).val()
    console.log('model number',modelNumber);
    $('#modal_'+modelNumber).modal({show:true})
    $('#modal_'+modelNumber).on('shown.bs.modal', function (e) {
      console.log('modal dialog shown, get the form values')
      // try to get input values here
   }) });

并将输入类型按钮属性“val”更改为“value”。

© www.soinside.com 2019 - 2024. All rights reserved.