在Jquery EasyUI对话框中设置输入文本框的默认值

时间:2014-10-28 08:14:24

标签: javascript input dialog jquery-easyui

我已经用Google搜索并查看了整个文档,但无法弄清楚为什么输入文本的值不会显示。我正在使用FireFox最新版本,以下是我到目前为止所做的。

 <input name="amount" class="easyui-validatebox" id="d_amount" value="">

在常规的html或php页面中,我们可以给value="300"设置默认值,但在EasyUI中,它是不可能的。所以我在考虑可能的替代方案如下:

  <script>
   var m = '300';
   document.getElementById("d_amount").value.innerHTML=m;
  </script>

没有显示任何内容,我没有收到任何错误。任何EasyUI专家,请帮助我。

注意:此输入字段位于对话框

7 个答案:

答案 0 :(得分:3)

要设置默认值,您必须设置value属性。但是,这不一定会更新value属性,因此您需要同时执行这两项操作。所以给出:

<input name="amount" class="easyui-validatebox" id="d_amount" value="">

通过设置value属性来设置默认值:

var input = document.getElementById('d_amount')
input.setAttribute('value', 'whatever');

现在设置value属性:

input.value = 'whatever';

请注意,您还可以将输入引用作为其所在表单的成员:

var input = document.formName.d_amount;

答案 1 :(得分:2)

使用以下代码

$("#d_amount").numberbox({
    min:0,
    precision:2,
    value:300

})

参考:numberbox

或试试这个

$("#d_amount").textbox({
    buttonText:'Search',
    iconCls:'icon-man',
    iconAlign:'left',
    value:"300"
});

参考:textbox

答案 2 :(得分:1)

使用此代码设置$(document).ready(function(){}

中的值
  ....
  $("#d_amount").numberbox('setValue','300');
  ....

如果仍然无效,只需尝试将nameid设为相同的名称和ID

<input name="d_amount" class="easyui-validatebox" id="d_amount" value="">

我一直在使用这个数字框并且它正在工作

答案 3 :(得分:1)

我找到了你的帖子,因为我也遇到了同样的问题,我今天刚刚讨论过这个问题。你的情况有点不同(也许)然后是我的情况,因为你想设置默认值,以后用户可以更改(我相信)。在我的情况下,价值将是固定的(不会改变)所以我已经应用了一个技巧,希望它可以给你和其他有相同问题的人提供一些想法。请参考以下内容:

在第一页说pageA.php:

<select name="myThing" id="myThing">
    <option value="Your Desired Value" selected="selected">Something</option>
</select>

仍然在同一页面中,在$(document).ready( function(){下方输入以下代码:

$("#myThing").val($("#myThing option:first").val());

该代码用于确保您所需的值显示在下拉列表的第一行。我说这是因为在EasyUI中,当我使用下拉并放置单个选项时,第一行将为空,第二行将保留您的输入。因此,这是确保您所需的值显示在顶部并被选中的技巧。将select放在form下,然后在正常帖子中,您将能够在发布的页面中获取它的值。请享用。谢谢。

建议:如果用户可以更改您的值,请使用placeholder,然后您可以使用我的技巧隐藏用户的默认值。

答案 4 :(得分:0)

试试这个

 document.getElementById("d_amount").value=m;

你不需要innerHTML

答案 5 :(得分:0)

我找到了答案here。诀窍是使用$(function(){});

中的代码
$(function(){
    var m=300;
    $('#d_amount').textbox('setValue', m);
});

答案 6 :(得分:0)

我也有这个问题,并使用以下

解决了

首先我输入的内容如下:

<input name="hostFirstName" id="hostFirstName"  class="easyui-textbox">

我需要从数据库加载内容然后使用此数据预填充输入,以便用户可以编辑内容。 我使用了以下javascript。

注意:我没有在匿名函数()中隐藏它并且它正在工作。我首先从F12控制台测试了这一点,以确保它在更改我的代码之前正常工作。

//populate with existing data
$('#hostFirstName').textbox('setValue', "Is this working?");

当您查看文本框api引用时,jeasyui.com上的文档不提供此示例。但它们确实提供了一个示例,当查看组合框(http://www.jeasyui.com/documentation/index.php#)时,组合框和文本框使用相同的setValue方法。

希望这对你有用,就像它对我一样。