我目前正在使用YUI小工具。我也有一个Javascript函数来验证来自YUI为我绘制的div
的输出:
Event.on("addGadgetUrl", "click", function(){
var url = Dom.get("gadget_url").value; /* line x ------>*/
if (url == "") {
error.innerHTML = "<p> error" /></p>";
} else {
/* line y ---> */
/* I need to add some code in here to set the value of "gadget_url" by "" */
}
}, null, true);
这是我的div
:
<div>
<p>URL</p>
<input type="text" name="gadget_url" id="gadget_url" style="width: 350px;" class="input"/>
<input type="button" id="addGadgetUrl" value="add gadget"/>
<br>
<span id="error"></span>
</div>
正如你可以看到我的问题是,如何将gadget_url
的值设置为""
?
尝试...为YUI
Dom.get("gadget_url").set("value","");
与正常的Javascript
document.getElementById('gadget_url').value = '';
用JQuery
$("#gadget_url").val("");
document.getElementById('gadget_url').value = '';
以下适用于MVC5:
document.getElementById('theID').value = 'new value';
根据用例,无论你使用javascript(element.value = x
)还是jQuery $(element).val(x);
都会有所不同
当x
是undefined
时,jQuery会产生一个空字符串,而javascript会导致"undefined"
成为一个字符串。
我没有使用YUI,但万一它可以帮助其他人 - 我的问题是我在页面上有重复的ID(在对话框中工作并忘记了下面的页面)。
更改ID以使其唯一允许我使用Sangeet答案中列出的方法。
document.getElementById('gadget_url')。value ='your value';
建议不要在html中使用id(特别是对于创建组件)但是请使用它,所以请尝试
gadget_url.value=''
gadget_url.value = ''
function set() {
gadget_url.value = 'cool gadget';
}
<div>
<p>URL</p>
<input type="text" name="gadget_url" id="gadget_url" style="width: 350px;" class="input" value="some value" />
<input type="button" id="addGadgetUrl" value="add gadget" onclick="set()" />
<br>
<span id="error"></span>
</div>