Jquery:如何根据事件从其他列表中设置文本框的值?

时间:2017-09-26 13:45:21

标签: jquery list events select sharepoint

我有一个Sharepoint自定义列表,用户可以在其中添加新项目。我有2个文本框(" A"&" B")我想在" B"中插入一个值。如果" A"改变了。 问题:

1。如何选择文本框?

首先,我尝试将文本简单地插入文本框" A"基于this,但我没有成功。这是我的代码:

<script type="text/javascript">
$(function () {
$('input[name="Test"]').val('some text');
 });
</script>

如果我使用chrome,请按F12并选择文本框&#34; A&#34;它说ID是&#34;输入#Test_cc4abb3b-4c1c-45a4-83fc-af4a2dcb1d99_ $ TextField.ms-long.ms-spellcheck-true&#34;。所以我尝试了:

$(function () {
$('input#Test_cc4abb3b-4c1c-45a4-83fc-af4a2dcb1d99_$TextField.ms-long.ms-spellcheck-true').val('some value');
});

但遗憾的是仍然不行。也许我错过了其他的东西。我相信这应该在我打开页面时默认填充选定的文本框。

2。如何根据chage事件制作它?

我想触发设置文本框&#34; B&#34;如果用户在文本框中完成了写作&#34; A&#34;。 (按输入/选项卡或点击字段等...)

第3。如何插入文本框&#34; B&#34;来自其他名单?

例如:我想插入文本框&#34; B&#34;来自名为&#34; ID&#34;的唯一列,基于唯一列&#34;名称&#34;在哪里我得到了#34;姓名&#34;文本框中的值&#34; A&#34;(用户编写)。 (&#34; ID&#34;和&#34;名称&#34;是其他列表的列。)

很抱歉这些琐碎的问题,我是Jquery的新手,非常感谢你的指导!

1 个答案:

答案 0 :(得分:1)

如果您使用jQuery,您只需将onchange事件处理程序绑定到输入A即可更改输入B的值。

$(function() {
    $("input[name='A']").on('change', function() {
    $("input[name='B']").val( ($("input[name='A']").val() * 2) );
  })
});

示例小提琴: https://jsfiddle.net/3rh914ru/

修改

所以你需要的是这样的东西;

$("*[name*='Test_']")

使用这样的选择器,您可以在其字段中选择包含字符串“Test_”的所有元素。根据这个,我更新了这样的小提琴;

$(function() {
    $("*[name*='Test_']").on('change', function() {
    $("*[name*='Result_']").val( ($("*[name*='Test_']").val() * 2) );
  })
});

更新了小提琴: https://jsfiddle.net/3rh914ru/1/