当前位置: 首页 > 面试题库 >

如何从nodejs设置HTML中的文本字段的值?

严狐若
2023-03-14
问题内容

我正在用nodejs和html进行项目。任何人都可以帮助您从server.js中设置html文本字段的值。例如,我在index.html上有ID为’name’的文本字段。我使用res.body.name
=’nametest’。但是它不起作用。请给我一个简单的例子。谢谢朋友


问题答案:

为了设置服务器中的字段,您需要将其设置为在发送HTML时定义的预设值,或者稍后再动态设置。第一个选项很简单,第二个选项有点高级。

让我们看一下选项1。这只是一个非常基本的示例!请不要在生产中使用它。

index.html

<!DOCTYPE html>
<html>
  <head><!-- your stuff here --></head>
  <body><input type="text" name="someVal" value="{{someVal}}"></body>
</html>

这可能是您的HTML。只是一个独特的占位符,您希望您的价值得以实现。可能有更好的技术可以做到这一点,但是为了简单起见,我选择了这种方式。

server.js

var http = require('http');
var fs = require('fs');

http.createServer((req, res) => {
  fs.readFile('index.html', (err, data) => {
    if (err) {
      res.writeHead(500);
      res.end(err);
      return;
    }

    data = data.toString().replace(/\{\{someVal\}\}/, 'your value here');
    res.writeHead(200);
    res.end(data, 'utf8');
  });
}).listen(8080);

此server.js将在端口8080上打开HTTP服务器。它将尝试index.html从同一目录读取。如果失败,它将错误消息发送给客户端,否则它将用您的值替换HTML中的占位符,然后将修改后的内容发送给客户端。
如果这就是您要做的,PHP可能会为您做得更好(但这只是我的2美分:))

选项2更加详尽。您可能必须使用AJAJ(异步Javascript和JSON),它要求客户端知道何时获取值,或者您可以使用websocket来使服务器将值推送到客户端。对于其中的任何一个,那里都有很多教程,比我在这里可以为您整理的任何东西都要详尽得多。
如果您想使用这些技术,但不确定其实现方式,则可能需要研究Meteor和Socket.IO之类的框架。



 类似资料:
  • 问题内容: 我是Node.JS的新手。我发现很少有文章说我们可以使用.env文件来设置process.env变量,例如, 但是当我在节点中运行该程序时,它仍然是8080 PORT(默认情况下)。问题是,如何在没有任何其他第三方模块帮助的情况下在Node中设置env变量?(我发现管理第三方配置的第三方软件包很少,但是…有点困惑,不同的软件包可能具有不同的规则和更复杂的用例;我想从清晰的方法开始研究纯

  • 如何设置组件的焦点? 我已经尝试了上述代码,但不起作用:(

  • 如何设置文本字段中文本的颜色?例如,将“你好和谐”字段中的“和谐”字体设置为红色。Android代码实现如下: SpannableStringBuilder ssb=新的SpannableStringBuilder();ssb。setSpan(新的ForegroundColorSpan(getCurrentHintTextColor()),i,i 1,0);

  • 我有一个Material UI文本字段作为输入,我需要强制输入大写文本。我曾尝试使用作为样式属性的一部分,但这似乎不起作用。我的组件中的所有其他样式都已正确应用,但textTransform未正确应用。 我也尝试过使用标准样式方法将我的样式作为道具传递给组件,但我得到了相同的结果。 我的组件: 输出:

  • 我一直在试图找出如何样式的材料ui TextField组件。 我的类创建如下: 我的问题是,我似乎无法让文本字段的颜色变成白色。我似乎能够将样式应用于整个文本字段(因为宽度样式工作等)...但是我认为问题是我没有将样式应用到链的更下游和实际输入中。 我曾试图寻找其他关于传递输入道具的答案,但没有成功。 我已经尽了我最大的努力,但我想我需要问问是否有人知道我做错了什么。 它现在看起来是什么样子

  • 我在动态应用程序中使用片段,其中User.java文件包含值,而< code>TabbedActivity.java文件包含三个片段。我想将文本设置为< code > profile rgament . Java 中的< code>TextView。因此,我在< code > fragment _ profile . XML 中创建了一个< code>TextView,并使用以下代码从< code